time="2024-07-23T16:30:28Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authentication-1 Creating Container integration-test-federation-1 Creating Container integration-test-experiment-1 Creating Container integration-test-device-1 Creating Container integration-test-gateway-1 Creating Container integration-test-authorization-1 Creating Container integration-test-authorization-1 Created Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-device-1 Created Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_backends.conf to /etc/nginx/api_backends.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_gateway.conf to /etc/nginx/api_gateway.conf gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh gateway-1 | /docker-entrypoint.sh: Configuration complete; ready for start up federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-07-23T16:31:03Z"} authentication-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","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:47454","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-07-23T16:31:03Z"} authorization-1 | {"client_addr":"127.0.0.1:47454","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.256067,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:03Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1721752263.9222014} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1721752263.9223526} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1721752263.9223876} 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":1721752263.9225247} 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":1721752263.9225502} 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":1721752263.9225922,"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":1721752263.9231186} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1721752263.9239428} 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:40172","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-07-23T16:31:03.945806793Z","id":"01J3G6X789CVJE4AAD4WZJ6R03","name":"crosslab","updated_at":"2024-07-23T16:31:03.945806793Z"},"request_id":"78c32a36-653f-4259-b4a9-8af0f7f3bef4","subsystem":"openfga","timestamp":1721752263.9459584} 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:40172","raw_request":{"schema_version":"1.1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J3G6X79CTWQNSG2JE6BJGQ6M"},"request_id":"f639ff9f-2590-449a-b054-a8eb5df815ea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752263.9807665} authorization-1 | {"client_addr":"127.0.0.1:47454","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-07-23T16:31:03Z"} authorization-1 | {"client_addr":"127.0.0.1:47454","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.178381,"resp_status":204,"subsystem":"opa","time":"2024-07-23T16:31:03Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.66.0/opa_linux_amd64","latest_version":"0.66.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.66.0","subsystem":"opa","time":"2024-07-23T16:31:04Z"} gateway-1 | {"time_local":"23/Jul/2024:16:31:11 +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.010","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"fba4fc616c1020eae92c16a3b0d29e85"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 7ms","method":"HEAD","requestID":"fba4fc616c1020eae92c16a3b0d29e85","responseTime":7,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"23/Jul/2024:16:31:11 +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.013","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"2ee21a6a19e1b702dca37f4dcf350a7a"} device-1 | {"level":"info","message":"HEAD /device/status 200 9ms","method":"HEAD","requestID":"f89f5270-4910-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"23/Jul/2024:16:31:11 +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":"2a4f2c32577275cac3c1d2ba0f0bb253"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 8ms","method":"HEAD","requestID":"2a4f2c32577275cac3c1d2ba0f0bb253","responseTime":8,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"23/Jul/2024:16:31:11 +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.019","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"2499cad8a3b44688ebfe6c485ff85b28"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 12ms","method":"HEAD","requestID":"f8a5bb10-4910-11ef-a49f-63b0506bb333","responseTime":12,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"23/Jul/2024:16:31:11 +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.021","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"fe50cf8e3f27350f15e106c0310037f6"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 13ms","method":"HEAD","requestID":"f8a9d9c0-4910-11ef-8f88-f39e966676fc","responseTime":13,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"23/Jul/2024:16:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cd867f51048f5a35f6eec5eef299bb1"} authentication-1 | {"level":"info","message":"POST /login 201 133ms","method":"POST","requestID":"2cd867f51048f5a35f6eec5eef299bb1","responseTime":133,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3NH0.Rva-DZ_ywUfQIasEl4PGjmP3w6VHGKZ44WzkbMtkvuI","level":"info","message":"auth send jwt","requestID":"cd86c16ebd4d030358fd029896dde756"} authentication-1 | {"level":"info","message":"GET /auth 200 20ms","method":"GET","requestID":"cd86c16ebd4d030358fd029896dde756","responseTime":20,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cd86c16ebd4d030358fd029896dde756"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.939651,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cd86c16ebd4d030358fd029896dde756","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752274,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3NH0.Rva-DZ_ywUfQIasEl4PGjmP3w6VHGKZ44WzkbMtkvuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"14c2b3d7-e0e7-4c22-bdeb-2199fb6bec4d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.3020186} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0d43ba7-5023-4320-8cc7-fd6dffe31658","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.3189642} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b851ced7-9708-4c0e-bd79-bc9feb320237","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.3369927} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e775d01-93d9-4fd4-886d-8c79bb519ef1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.337449} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.336970292Z"}]},"request_id":"af878f16-4613-4a1e-b13b-1affe2ccf867","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.346272} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cd86c16ebd4d030358fd029896dde756"} gateway-1 | {"time_local":"23/Jul/2024:16:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.274","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd86c16ebd4d030358fd029896dde756"} device-1 | {"level":"info","message":"POST /devices? 201 234ms","method":"POST","requestID":"cd86c16ebd4d030358fd029896dde756","responseTime":234,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3NH0.Rva-DZ_ywUfQIasEl4PGjmP3w6VHGKZ44WzkbMtkvuI","level":"info","message":"auth send jwt","requestID":"ad694bb611032f70e254b9e74eb07639"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad694bb611032f70e254b9e74eb07639","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad694bb611032f70e254b9e74eb07639"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.761174,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ad694bb611032f70e254b9e74eb07639","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752274,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3NH0.Rva-DZ_ywUfQIasEl4PGjmP3w6VHGKZ44WzkbMtkvuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2fa3a71a-d75f-4a7b-92bf-8f3fc509c8c9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.407663} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b966daad-d42c-42ea-adb4-3afe880360ef","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.4201176} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c8ccf88c-83f4-4d53-a2d1-2e5a01064320","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.4375372} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23361d87-1d9b-49d7-961d-bdb2e9d55efc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.4381685} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.437519726Z"}]},"request_id":"6faf1bb9-6681-4d3a-8286-1433533aaaa9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752274.4497468} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad694bb611032f70e254b9e74eb07639"} gateway-1 | {"time_local":"23/Jul/2024:16:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.079","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad694bb611032f70e254b9e74eb07639"} device-1 | {"level":"info","message":"POST /devices? 201 72ms","method":"POST","requestID":"ad694bb611032f70e254b9e74eb07639","responseTime":72,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c933989213456ca2c1ad3f7c4c301d0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c933989213456ca2c1ad3f7c4c301d0a","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e1ed69c81e5ca236b80a5abf5477234","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"1e1ed69c81e5ca236b80a5abf5477234","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.009","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c933989213456ca2c1ad3f7c4c301d0a"} device-1 | {"level":"info","message":"OPTIONS /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket 200 3ms","method":"OPTIONS","requestID":"c933989213456ca2c1ad3f7c4c301d0a","responseTime":3,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:31:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.012","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1e1ed69c81e5ca236b80a5abf5477234"} device-1 | {"level":"info","message":"OPTIONS /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket 200 2ms","method":"OPTIONS","requestID":"1e1ed69c81e5ca236b80a5abf5477234","responseTime":2,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y","level":"info","message":"auth send jwt","requestID":"6bd801dec02ad132ad1cbbebcf2c927a"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"6bd801dec02ad132ad1cbbebcf2c927a","responseTime":12,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y","level":"info","message":"auth send jwt","requestID":"10caeebd33cab195078ca7a5ecfa6f91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6bd801dec02ad132ad1cbbebcf2c927a"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"10caeebd33cab195078ca7a5ecfa6f91","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"10caeebd33cab195078ca7a5ecfa6f91"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900335,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6bd801dec02ad132ad1cbbebcf2c927a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752276,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6bd801dec02ad132ad1cbbebcf2c927a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.453924,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10caeebd33cab195078ca7a5ecfa6f91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752276,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"10caeebd33cab195078ca7a5ecfa6f91","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"10caeebd33cab195078ca7a5ecfa6f91"} gateway-1 | {"time_local":"23/Jul/2024:16:31:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.067","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"10caeebd33cab195078ca7a5ecfa6f91"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket 200 53ms","method":"POST","requestID":"10caeebd33cab195078ca7a5ecfa6f91","responseTime":53,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6bd801dec02ad132ad1cbbebcf2c927a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.072","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6bd801dec02ad132ad1cbbebcf2c927a"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket 200 58ms","method":"POST","requestID":"6bd801dec02ad132ad1cbbebcf2c927a","responseTime":58,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y","level":"info","message":"auth send jwt","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248605,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752276,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3Nn0.vX80MM9HBuPsupgiJlWQIl2LFLP9lvMXUFASeB_5b3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.336970292Z"}]},"request_id":"7fd5ba9b-45f9-4a76-9e99-b12b6957e1dc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.0036764} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5"} device-1 | {"level":"info","message":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? 200 42ms","method":"GET","requestID":"8a09fa79c3df1a2afdfe7c42c0d82af5","responseTime":42,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"1a19eb7be1bf622529415037c9be0e8e"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"1a19eb7be1bf622529415037c9be0e8e","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a19eb7be1bf622529415037c9be0e8e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.358678,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a19eb7be1bf622529415037c9be0e8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1a19eb7be1bf622529415037c9be0e8e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.437519726Z"}]},"request_id":"0f959202-4c6d-4cb0-809f-ec19d5c0c36a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.0585525} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"1a19eb7be1bf622529415037c9be0e8e","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a19eb7be1bf622529415037c9be0e8e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a19eb7be1bf622529415037c9be0e8e"} device-1 | {"level":"info","message":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? 200 32ms","method":"GET","requestID":"1a19eb7be1bf622529415037c9be0e8e","responseTime":32,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"bcbe25e066d1279e1386a2e9cdfd334f","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.978463,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bcbe25e066d1279e1386a2e9cdfd334f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bcbe25e066d1279e1386a2e9cdfd334f","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to run experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to book experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully booked experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891018,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893006,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.336970292Z"}]},"request_id":"4527d903-950b-4641-b8ac-262ea97d78d6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.3073657} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.437519726Z"}]},"request_id":"dffb1265-5c53-4ab8-ab8a-4e8c0085ef08","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.3095424} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? 200 26ms","method":"GET","requestID":"fc4c2dd0-4910-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? 200 25ms","method":"GET","requestID":"fc4c7bf0-4910-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Setting up experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully set up experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc5b4900-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90085,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.861933,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully running experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc5b4900-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"fc5b4900-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.336970292Z"}]},"request_id":"75734612-22b2-4196-97f7-641b88174f92","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.41882} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b5a6d88-096c-4fdc-8d4f-97f0a69395fe#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"3d90ab98-1103-485e-a54c-9ddfbb386659","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.422352} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc5f40a0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fc5b4900-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc5b4900-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? 200 37ms","method":"GET","requestID":"fc5b4900-4910-11ef-863d-25b977f1d961","responseTime":37,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2e3e55f-9896-40a9-aed7-5b1a6b445baa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4276268} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"bcbe25e066d1279e1386a2e9cdfd334f","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.437519726Z"}]},"request_id":"dbb9bc8c-2a37-4993-be50-c64316da56cd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4310026} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"105ac8b8-525b-4e31-a200-197241c31c57","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4382992} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.857787,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? 200 46ms","method":"GET","requestID":"fc5bbe30-4910-11ef-863d-25b977f1d961","responseTime":46,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc5f40a0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","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/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fc5f40a0-4910-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.369","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 340ms","method":"POST","requestID":"bcbe25e066d1279e1386a2e9cdfd334f","responseTime":340,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc5f40a0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling 200 33ms","method":"POST","requestID":"fc5f40a0-4910-11ef-863d-25b977f1d961","responseTime":33,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc64bee0-4910-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"72f688c93d5a9cf0af01dfe6785f3543"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"72f688c93d5a9cf0af01dfe6785f3543","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc658230-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72f688c93d5a9cf0af01dfe6785f3543"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d17ed2d2-b32b-43e4-a9ee-5d5974acb219","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4612918} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.295879,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc64bee0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","rebac_allow":false,"scope_allow":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":"fc64bee0-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d63c9d8-cb6a-4487-bfb6-b6b94d0407d7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4639516} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.362276,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc64bee0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling 200 13ms","method":"POST","requestID":"fc64bee0-4910-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc658230-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","rebac_allow":false,"scope_allow":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":"fc658230-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37804","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37804","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.964457,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc658230-4910-11ef-863d-25b977f1d961"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"72f688c93d5a9cf0af01dfe6785f3543","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling 200 12ms","method":"POST","requestID":"fc658230-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"72f688c93d5a9cf0af01dfe6785f3543","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc677e00-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49bd7d40-4c36-416b-8d8c-fd8916ba9b55","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4771209} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.336970292Z"}]},"request_id":"b89c1e22-9da0-4ed4-a347-c940b9815b75","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.4771743} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"72f688c93d5a9cf0af01dfe6785f3543","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.626062,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc677e00-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","rebac_allow":false,"scope_allow":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":"fc677e00-4910-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72f688c93d5a9cf0af01dfe6785f3543"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"72f688c93d5a9cf0af01dfe6785f3543"} device-1 | {"level":"info","message":"GET /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8? 200 23ms","method":"GET","requestID":"72f688c93d5a9cf0af01dfe6785f3543","responseTime":23,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc677e00-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling 200 12ms","method":"POST","requestID":"fc677e00-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Building connection plan","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"1db8fdb3-375b-44e2-ad33-c1d26d72cfb6"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"ebf4e7a5-d7b9-41af-94ab-613e607282af"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"655eeba6-c7dc-4fcc-9a6a-bb7b9880dfab"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"9b54a72994a78198c7d6a832530edce7"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9b54a72994a78198c7d6a832530edce7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b54a72994a78198c7d6a832530edce7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710766,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9b54a72994a78198c7d6a832530edce7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b54a72994a78198c7d6a832530edce7","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.917694,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc6ad960-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:14.437519726Z"}]},"request_id":"cd25a92c-abf2-49ca-8538-dfc509b09fc7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.5005693} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b54a72994a78198c7d6a832530edce7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b54a72994a78198c7d6a832530edce7"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b54a72994a78198c7d6a832530edce7"} device-1 | {"level":"info","message":"GET /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9? 200 17ms","method":"GET","requestID":"9b54a72994a78198c7d6a832530edce7","responseTime":17,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"3b843bf0-8c33-44ee-b297-31c5c6642ac1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.5198853} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c44f531-d984-46d1-bdc5-a8b13a6a9db1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.5200655} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972'","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972'","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 49ms","method":"POST","requestID":"fc6ad960-4910-11ef-863d-25b977f1d961","responseTime":49,"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":"fc6ad960-4910-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bcbe25e066d1279e1386a2e9cdfd334f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc79a670-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27efc904-c54e-45e5-874c-696b968a433f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.5976453} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.298175,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc79a670-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","rebac_allow":false,"scope_allow":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":"fc79a670-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc79a670-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling 200 12ms","method":"POST","requestID":"fc79a670-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc7bf060-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c891b3c-c3f5-463f-aa9b-ca3326edc63d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.6109507} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.22086,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc7bf060-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","rebac_allow":false,"scope_allow":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":"fc7bf060-4910-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc7bf060-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling 200 9ms","method":"POST","requestID":"fc7bf060-4910-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling"} device-1 | {"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3134858217113247560 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:JBmu\r\na=ice-pwd:500ZZMxCR0wTHuFapOX+kV3A\r\na=ice-options:trickle\r\na=fingerprint:sha-256 79:34:5B:52:BD:2C:B8:DF:F4:58:04:52:65:71:CE:4C:BA:E1:85:4F:C9:2A:7B:B7:BD:AD:E1:89:30:91:1A:1B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6937877877820071203 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:/omA\r\na=ice-pwd:myeheG1/aRJ//4n5RLv192SI\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:EE:C8:88:2C:88:D0:F2:6C:72:2F:F5:70:5C:4C:01:34:66:8C:A8:B5:94:1D:EF:D1:B8:FA:D8:61:95:BA:4C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3370241805 1 udp 2113937151 df4cca32-4cb9-4abe-9d88-5d25dcc468e3.local 52160 typ host generation 0 ufrag /omA network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","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/a2b36b12-8dc1-4963-acc1-c360301b29e9'"} device-1 | {"content":{"candidate":"candidate:1539993118 1 udp 1677729535 141.24.211.56 52160 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /omA network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2564956354 1 udp 2113937151 41c5c203-ebee-47c8-85e7-c221bc0091ed.local 59405 typ host generation 0 ufrag JBmu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:483347133 1 udp 1677729535 141.24.211.56 59405 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag JBmu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","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/a2b36b12-8dc1-4963-acc1-c360301b29e9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8'"} device-1 | {"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","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/419c64b0-d961-4699-8151-ef2d1f7da972' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"378eec8d3dd73de53a27c977e3ed289b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"378eec8d3dd73de53a27c977e3ed289b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"}}},"level":"info","message":"received a callback","requestID":"378eec8d3dd73de53a27c977e3ed289b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"378eec8d3dd73de53a27c977e3ed289b","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"378eec8d3dd73de53a27c977e3ed289b"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","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/419c64b0-d961-4699-8151-ef2d1f7da972' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bd413afe1386bba55ed9d2d959d005f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"bd413afe1386bba55ed9d2d959d005f3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"}}},"level":"info","message":"received a callback","requestID":"bd413afe1386bba55ed9d2d959d005f3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fc912610-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F419c64b0-d961-4699-8151-ef2d1f7da972","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a0582e3-dbe4-4027-9519-5988c2b0744f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.7506418} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.401829,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc912610-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","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":"fc912610-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fc912610-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972 200 11ms","method":"GET","requestID":"fc912610-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"bd413afe1386bba55ed9d2d959d005f3","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"bd413afe1386bba55ed9d2d959d005f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc956bd0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"301ca21c-6c06-41f7-ba4c-43719fe9a778","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.7792268} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.563168,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc956bd0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"bdaead85a42873b09e3c193ff5696199"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc956bd0-4910-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"bdaead85a42873b09e3c193ff5696199","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","requestID":"bdaead85a42873b09e3c193ff5696199"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc956bd0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling 200 11ms","method":"POST","requestID":"fc956bd0-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.757173,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fc97b5c0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bdaead85a42873b09e3c193ff5696199","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bdaead85a42873b09e3c193ff5696199","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4443ce79-c9c0-4f70-a003-724988434892","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.7941954} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.678084,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc97b5c0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","requestID":"bdaead85a42873b09e3c193ff5696199"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc97b5c0-4910-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fc97b5c0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling 200 11ms","method":"POST","requestID":"fc97b5c0-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdaead85a42873b09e3c193ff5696199"} experiment-1 | {"level":"info","message":"GET /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe 200 17ms","method":"GET","requestID":"bdaead85a42873b09e3c193ff5696199","responseTime":17,"status":200,"url":"/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"e8623e829eb693d6b9cdb26dae026648"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8623e829eb693d6b9cdb26dae026648","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","requestID":"e8623e829eb693d6b9cdb26dae026648"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.726496,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e8623e829eb693d6b9cdb26dae026648","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8623e829eb693d6b9cdb26dae026648","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Attempting to finish experiment","requestID":"e8623e829eb693d6b9cdb26dae026648"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.816396,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","device":"a2b36b12-8dc1-4963-acc1-c360301b29e9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972","device":"184c023f-77e8-4c3e-8931-a32dcc4e3ec8","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/419c64b0-d961-4699-8151-ef2d1f7da972' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8eb14f2ca486161153beb0f49e2b2356","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8eb14f2ca486161153beb0f49e2b2356","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"}}},"level":"info","message":"received a callback","requestID":"8eb14f2ca486161153beb0f49e2b2356"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b31c99e8f098c239a7d05a712e317eec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b31c99e8f098c239a7d05a712e317eec","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"}}},"level":"info","message":"received a callback","requestID":"b31c99e8f098c239a7d05a712e317eec"} device-1 | {"data":{"peerconnection":"419c64b0-d961-4699-8151-ef2d1f7da972","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F419c64b0-d961-4699-8151-ef2d1f7da972': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F419c64b0-d961-4699-8151-ef2d1f7da972","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"5fa83349-2c72-4ec4-89bd-471968c4d452","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.8530545} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49e1cc89-5f42-4aa2-9745-67a5644c785d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.8532565} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972 204 51ms","method":"DELETE","requestID":"fc9cbed0-4910-11ef-863d-25b977f1d961","responseTime":51,"status":204,"url":"/peerconnections/419c64b0-d961-4699-8151-ef2d1f7da972"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"},"level":"info","message":"Successfully finished experiment","requestID":"e8623e829eb693d6b9cdb26dae026648"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fca76d30-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2b36b12-8dc1-4963-acc1-c360301b29e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89fcb32d-7981-484d-be5a-93edc77f31f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.9017622} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.546429,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fca76d30-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9","object_type":"device","rebac_allow":false,"scope_allow":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":"fca76d30-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fca76d30-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling 200 18ms","method":"POST","requestID":"fca76d30-4910-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/a2b36b12-8dc1-4963-acc1-c360301b29e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fcaaefa0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b5a6d88-096c-4fdc-8d4f-97f0a69395fe': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"725d91b5-aaac-4884-8117-dc1ca797feea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.9177864} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2156b1a-8e45-4280-bb7f-841f7971ced4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.9180107} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c023f-77e8-4c3e-8931-a32dcc4e3ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e5ad8b5-6731-4dd4-ba9e-e08000e8ad88","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752277.9209094} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.323936,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:17Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 34ms","method":"POST","requestID":"e8623e829eb693d6b9cdb26dae026648","responseTime":34,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fcaaefa0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8","object_type":"device","rebac_allow":false,"scope_allow":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":"fcaaefa0-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fcaaefa0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling 200 15ms","method":"POST","requestID":"fcaaefa0-4910-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe","requestID":"e8623e829eb693d6b9cdb26dae026648"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe 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":"e8623e829eb693d6b9cdb26dae026648"} experiment-1 | {"level":"info","message":"DELETE /experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe 204 183ms","method":"DELETE","requestID":"e8623e829eb693d6b9cdb26dae026648","responseTime":183,"status":204,"url":"/experiments/0b5a6d88-096c-4fdc-8d4f-97f0a69395fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 152ms","method":"POST","requestID":"8eb14f2ca486161153beb0f49e2b2356","responseTime":152,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.157","http_referrer":"","http_user_agent":"node-fetch","requestID":"8eb14f2ca486161153beb0f49e2b2356"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"b31c99e8f098c239a7d05a712e317eec","responseTime":151,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.157","http_referrer":"","http_user_agent":"node-fetch","requestID":"b31c99e8f098c239a7d05a712e317eec"} gateway-1 | {"time_local":"23/Jul/2024:16:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"1.059","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"32026adc0cfd96428e741eea21ecc6dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI","level":"info","message":"auth send jwt","requestID":"64b750cb1ee6f05ae15bc1e0264763cd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"1.064","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fb7bc33e2b1bf9a0c5b7b45e895b12ff"} device-1 | {"level":"info","message":"postDevices called","requestID":"64b750cb1ee6f05ae15bc1e0264763cd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.844975,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"64b750cb1ee6f05ae15bc1e0264763cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752277,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3N30.68kZK0X_JbDMAFG-B_W1DTqq3LXYoJo3tEIL0cP7sSI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","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/a2b36b12-8dc1-4963-acc1-c360301b29e9' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/184c023f-77e8-4c3e-8931-a32dcc4e3ec8' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d96ac1fb-2265-4c10-b782-e28cd0df2cf5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.0287833} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dbde0f0-8791-48bd-afad-875d78d841fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.0355291} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"19f9f8e1-0172-4a51-8ffc-f4d83c27eca3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.046603} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfda5583-ccf4-4582-8fdf-57d49f690151","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.0468588} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.046582388Z"}]},"request_id":"8c16c0f1-0cb4-41fa-836b-ae401df5d7da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.0516455} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"64b750cb1ee6f05ae15bc1e0264763cd"} gateway-1 | {"time_local":"23/Jul/2024:16:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64b750cb1ee6f05ae15bc1e0264763cd"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"64b750cb1ee6f05ae15bc1e0264763cd","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c","level":"info","message":"auth send jwt","requestID":"364f492cb6003b903ac42fab8ef2dbb9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"364f492cb6003b903ac42fab8ef2dbb9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"364f492cb6003b903ac42fab8ef2dbb9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.709135,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364f492cb6003b903ac42fab8ef2dbb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752278,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"84996779-1306-49ab-a2a0-9c4bd7960c4a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.085526} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"458fc6a7-52c9-4f2b-97f6-f01b3afcf5c9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.0906706} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b6ea0881-89f1-480f-97ad-13cb4113d006","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.1028528} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f715b93-3fd8-4afc-b03c-bd6895b4586f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.1030378} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"2dc80ad1-9047-4dc1-84f3-d4900e111c35","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.1087432} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"364f492cb6003b903ac42fab8ef2dbb9"} gateway-1 | {"time_local":"23/Jul/2024:16:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"364f492cb6003b903ac42fab8ef2dbb9"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"364f492cb6003b903ac42fab8ef2dbb9","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c","level":"info","message":"auth send jwt","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296996,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752278,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"0e9d0609-ba48-4b98-9178-67359fe04c8f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.7437847} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e7439ed-ec2f-43d1-9fc4-28f5205e9643","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.750337} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"9e31d1bc-3a50-477a-bff6-87921768d69b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752278.7692153} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc"} gateway-1 | {"time_local":"23/Jul/2024:16:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.070","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc"} device-1 | {"level":"info","message":"PATCH /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6 200 57ms","method":"PATCH","requestID":"c60ee39c39e5ca2a5f4dcf9c2180bfdc","responseTime":57,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c","level":"info","message":"auth send jwt","requestID":"ffae7f30c66a86c5bca9008b91c3e14c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ffae7f30c66a86c5bca9008b91c3e14c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ffae7f30c66a86c5bca9008b91c3e14c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34208,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ffae7f30c66a86c5bca9008b91c3e14c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752278,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI3OH0.hNDE325k_HRlbGLw3fqN6bWAOTN7x4G2b79hmsGJ77c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffae7f30c66a86c5bca9008b91c3e14c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ffae7f30c66a86c5bca9008b91c3e14c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ffae7f30c66a86c5bca9008b91c3e14c"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/websocket 200 29ms","method":"POST","requestID":"ffae7f30c66a86c5bca9008b91c3e14c","responseTime":29,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a135d925a137526788781baca1213021","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a135d925a137526788781baca1213021","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a62a7b22-5319-447a-bac9-11f6e9716508/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":"a135d925a137526788781baca1213021"} device-1 | {"level":"info","message":"OPTIONS /devices/a62a7b22-5319-447a-bac9-11f6e9716508/websocket 200 2ms","method":"OPTIONS","requestID":"a135d925a137526788781baca1213021","responseTime":2,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"fa93f44feb4700a9dad2c59139d44caa"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fa93f44feb4700a9dad2c59139d44caa","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fa93f44feb4700a9dad2c59139d44caa"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911597,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fa93f44feb4700a9dad2c59139d44caa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fa93f44feb4700a9dad2c59139d44caa","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fa93f44feb4700a9dad2c59139d44caa"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/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":"fa93f44feb4700a9dad2c59139d44caa"} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/websocket 200 24ms","method":"POST","requestID":"fa93f44feb4700a9dad2c59139d44caa","responseTime":24,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"953fd1dd9fad36231deb77ded3a65873"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"953fd1dd9fad36231deb77ded3a65873","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"953fd1dd9fad36231deb77ded3a65873"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179616,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"953fd1dd9fad36231deb77ded3a65873","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"953fd1dd9fad36231deb77ded3a65873","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.046582388Z"}]},"request_id":"6291000e-1549-449e-a64d-b460101b03fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.1862397} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"953fd1dd9fad36231deb77ded3a65873","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"953fd1dd9fad36231deb77ded3a65873"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"953fd1dd9fad36231deb77ded3a65873"} device-1 | {"level":"info","message":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? 200 20ms","method":"GET","requestID":"953fd1dd9fad36231deb77ded3a65873","responseTime":20,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124836,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d382e9e1d2e11510d0b3c2f67ccf821c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"6b5262d8-2229-4baf-8f63-f1a7d2f1e671","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.2159798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c"} device-1 | {"level":"info","message":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? 200 19ms","method":"GET","requestID":"d382e9e1d2e11510d0b3c2f67ccf821c","responseTime":19,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"cc206df4a7c523188573a36daab8dfcd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"cc206df4a7c523188573a36daab8dfcd","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cc206df4a7c523188573a36daab8dfcd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.328339,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cc206df4a7c523188573a36daab8dfcd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc206df4a7c523188573a36daab8dfcd","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to run experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to book experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully booked experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe152e00-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe157c20-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089026,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe152e00-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fe152e00-4910-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.48873,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe157c20-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fe157c20-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.046582388Z"}]},"request_id":"95335a2e-efcf-47d7-b74b-06b372106956","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.3034582} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fe152e00-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"78dc391e-9d18-4f3f-92eb-55ba6139167e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.3059635} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fe157c20-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe152e00-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? 200 28ms","method":"GET","requestID":"fe152e00-4910-11ef-863d-25b977f1d961","responseTime":28,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe157c20-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? 200 28ms","method":"GET","requestID":"fe157c20-4910-11ef-863d-25b977f1d961","responseTime":28,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Setting up experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully set up experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe2310b0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe2385e0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe23d400-4910-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully running experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.561818,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe2310b0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fe2310b0-4910-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.750461,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37804","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe2385e0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"fe2385e0-4910-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37804","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.582878,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"429ed77e-d0eb-4cb5-8280-e4562856aacd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.3978689} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe23d400-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","rebac_allow":false,"scope_allow":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":"fe23d400-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.046582388Z"}]},"request_id":"a7a3a8a3-ff06-440e-8244-b8439dffb515","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4033728} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe23d400-4910-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"fe2310b0-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"81b62ed0-ec13-41f6-a188-1bd8335a5e69","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4089582} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling 200 27ms","method":"POST","requestID":"fe23d400-4910-11ef-863d-25b977f1d961","responseTime":27,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fe2385e0-4910-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe290420-4910-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd61b42e-800e-4986-9be6-90f9ea4fe4c6#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd61b42e-800e-4986-9be6-90f9ea4fe4c6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"525ec4dd-2e60-40c1-847b-0236f6ce22bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4210205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2abe9973-f72e-4b9f-b632-720182e59299","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4214573} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe2310b0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? 200 46ms","method":"GET","requestID":"fe2310b0-4910-11ef-863d-25b977f1d961","responseTime":46,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe2385e0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"cc206df4a7c523188573a36daab8dfcd","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? 200 46ms","method":"GET","requestID":"fe2385e0-4910-11ef-863d-25b977f1d961","responseTime":46,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8093738f-2d49-4179-b69d-4685fdf0269b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4272141} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.315602,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe290420-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","rebac_allow":false,"scope_allow":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":"fe290420-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe290420-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling 200 18ms","method":"POST","requestID":"fe290420-4910-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe2c3870-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cc206df4a7c523188573a36daab8dfcd"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.219","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 212ms","method":"POST","requestID":"cc206df4a7c523188573a36daab8dfcd","responseTime":212,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ac2427d-4487-4683-ac12-4b343f6968c0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.447009} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922528,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe2c3870-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","rebac_allow":false,"scope_allow":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":"fe2c3870-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"2fb4c8b63b2807589db717f3f091f4b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe2c3870-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling 200 15ms","method":"POST","requestID":"fe2c3870-4910-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2fb4c8b63b2807589db717f3f091f4b4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2fb4c8b63b2807589db717f3f091f4b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe2f1ea0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.516233,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2fb4c8b63b2807589db717f3f091f4b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2fb4c8b63b2807589db717f3f091f4b4","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"837ceb0b-890f-46a4-9ffb-6cac10616e69","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4651225} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.560161,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe2f1ea0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","rebac_allow":false,"scope_allow":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":"fe2f1ea0-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.046582388Z"}]},"request_id":"ed6f5bc3-d23b-49d5-a0b8-915646f56b34","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.4699569} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe2f1ea0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling 200 13ms","method":"POST","requestID":"fe2f1ea0-4910-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2fb4c8b63b2807589db717f3f091f4b4","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Building connection plan","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"eb243c5f-8999-4f63-9c06-74f2e667f4d0"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9219b4d7-723c-4c09-a84f-ff62a28b410a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2ab01313-fbe5-406a-a398-8a98ef24c88b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cc206df4a7c523188573a36daab8dfcd"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cc206df4a7c523188573a36daab8dfcd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2fb4c8b63b2807589db717f3f091f4b4"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fb4c8b63b2807589db717f3f091f4b4"} device-1 | {"level":"info","message":"GET /devices/a62a7b22-5319-447a-bac9-11f6e9716508? 200 27ms","method":"GET","requestID":"2fb4c8b63b2807589db717f3f091f4b4","responseTime":27,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.074237,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe3252f0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98","level":"info","message":"auth send jwt","requestID":"f7d2826bc0ce80e5bae021fac2561d00"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f7d2826bc0ce80e5bae021fac2561d00","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f7d2826bc0ce80e5bae021fac2561d00"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557066,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f7d2826bc0ce80e5bae021fac2561d00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752280,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4MH0.2b1QkSdlGwNIxowIArtEnchr4jccB7m1t358H1wdR98"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7d2826bc0ce80e5bae021fac2561d00","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"6b862579-61a0-44f7-b372-fdfbf87dee95","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.5035133} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2bde14ed-92dc-488a-bbc2-dad4ec76e0fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.503801} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:18.102839978Z"}]},"request_id":"9187735a-0338-4789-9ced-baa5e096092e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.5050437} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f7d2826bc0ce80e5bae021fac2561d00","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f7d2826bc0ce80e5bae021fac2561d00"} gateway-1 | {"time_local":"23/Jul/2024:16:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7d2826bc0ce80e5bae021fac2561d00"} device-1 | {"level":"info","message":"GET /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6? 200 22ms","method":"GET","requestID":"f7d2826bc0ce80e5bae021fac2561d00","responseTime":22,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c'","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c'","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 46ms","method":"POST","requestID":"fe3252f0-4910-11ef-863d-25b977f1d961","responseTime":46,"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":"fe3252f0-4910-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cc206df4a7c523188573a36daab8dfcd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe3e39d0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cdced08-d19f-437f-a8c1-3c1febaaff6e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.5630434} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.433945,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe3e39d0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","rebac_allow":false,"scope_allow":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":"fe3e39d0-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe3e39d0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling 200 11ms","method":"POST","requestID":"fe3e39d0-4910-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe4035a0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a01445ed-a69c-41d2-a07d-812299c80785","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752280.5755706} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.540742,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fe4035a0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","rebac_allow":false,"scope_allow":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":"fe4035a0-4910-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe4035a0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling 200 10ms","method":"POST","requestID":"fe4035a0-4910-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling"} device-1 | {"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4200490233691489787 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:M9Zz\r\na=ice-pwd:qcevMFBprMPlzFRnJi6csGY9\r\na=ice-options:trickle\r\na=fingerprint:sha-256 46:4B:54:05:8C:49:16:62:FB:CF:70:E4:19:64:5A:8C:95:68:7A:40:5B:E3:3A:2B:D1:F6:7B:1D:B3:12:D6:AE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/be35a843-6171-42c2-8011-af874a7a007c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e16fd590e6df195d10b5d22fecc3c33","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6e16fd590e6df195d10b5d22fecc3c33","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"}}},"level":"info","message":"received a callback","requestID":"6e16fd590e6df195d10b5d22fecc3c33"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"6e16fd590e6df195d10b5d22fecc3c33","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e16fd590e6df195d10b5d22fecc3c33"} device-1 | {"content":{"candidate":"candidate:3867495532 1 udp 2113937151 9464490a-76e9-432f-83f9-3f172943823c.local 45083 typ host generation 0 ufrag M9Zz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1974398335 1 udp 1677729535 141.24.211.56 45083 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag M9Zz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3414316685 1 udp 33562623 141.24.210.113 52386 typ relay raddr 141.24.211.56 rport 45083 generation 0 ufrag M9Zz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a62a7b22-5319-447a-bac9-11f6e9716508","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/a62a7b22-5319-447a-bac9-11f6e9716508'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508'"} device-1 | {"data":{"peerconnection":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"be35a843-6171-42c2-8011-af874a7a007c","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/be35a843-6171-42c2-8011-af874a7a007c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b61e850a99c9dcdd120b80401969a53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8b61e850a99c9dcdd120b80401969a53","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"}}},"level":"info","message":"received a callback","requestID":"8b61e850a99c9dcdd120b80401969a53"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ff7de5c0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe35a843-6171-42c2-8011-af874a7a007c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f9bd557-f1e5-4f72-bfa8-f3242ade32de","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.6588638} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.379856,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff7de5c0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","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":"ff7de5c0-4910-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ff7de5c0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/be35a843-6171-42c2-8011-af874a7a007c 200 12ms","method":"GET","requestID":"ff7de5c0-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"8b61e850a99c9dcdd120b80401969a53","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b61e850a99c9dcdd120b80401969a53"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff849c80-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00a5f6ae-c7ae-4041-9cbb-84e5f1fff067","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.7036667} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.371452,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff849c80-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","rebac_allow":false,"scope_allow":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":"ff849c80-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff849c80-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling 200 15ms","method":"POST","requestID":"ff849c80-4910-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff8782b0-4910-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU","level":"info","message":"auth send jwt","requestID":"711060a1073a083c0ea5e0b50d5142c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"711060a1073a083c0ea5e0b50d5142c2","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","requestID":"711060a1073a083c0ea5e0b50d5142c2"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75456c9c-0a46-417e-bdc4-c9235198e22a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.7244377} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.983737,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff8782b0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","rebac_allow":false,"scope_allow":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":"ff8782b0-4910-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.871282,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"711060a1073a083c0ea5e0b50d5142c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752282,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"711060a1073a083c0ea5e0b50d5142c2","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff8782b0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling 200 17ms","method":"POST","requestID":"ff8782b0-4910-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","requestID":"711060a1073a083c0ea5e0b50d5142c2"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"711060a1073a083c0ea5e0b50d5142c2"} experiment-1 | {"level":"info","message":"GET /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6 200 18ms","method":"GET","requestID":"711060a1073a083c0ea5e0b50d5142c2","responseTime":18,"status":200,"url":"/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU","level":"info","message":"auth send jwt","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.266463,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752282,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Attempting to finish experiment","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.172385,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752282,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c","device":"a62a7b22-5319-447a-bac9-11f6e9716508","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/be35a843-6171-42c2-8011-af874a7a007c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe35a843-6171-42c2-8011-af874a7a007c': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe35a843-6171-42c2-8011-af874a7a007c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"bf03032f-b0ee-4696-8052-69deb8be57f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.7879934} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d15362a46799f6b73d8a486c5d5a2752","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d15362a46799f6b73d8a486c5d5a2752","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0eb9d687-b128-495b-8ce9-36761090f49c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.7885885} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ff55c83144158225e9420151aec9af6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 10ms","method":"POST","requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1ff55c83144158225e9420151aec9af6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"}}},"level":"info","message":"received a callback","requestID":"d15362a46799f6b73d8a486c5d5a2752"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"}}},"level":"info","message":"received a callback","requestID":"1ff55c83144158225e9420151aec9af6"} device-1 | {"data":{"peerconnection":"be35a843-6171-42c2-8011-af874a7a007c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/be35a843-6171-42c2-8011-af874a7a007c 204 48ms","method":"DELETE","requestID":"ff8eaea0-4910-11ef-863d-25b977f1d961","responseTime":48,"status":204,"url":"/peerconnections/be35a843-6171-42c2-8011-af874a7a007c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"},"level":"info","message":"Successfully finished experiment","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff98c0c0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9f720de-91a1-4c44-b380-62d9d7ac6bc2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.834509} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.677549,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff98c0c0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6","object_type":"device","rebac_allow":false,"scope_allow":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":"ff98c0c0-4910-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff98c0c0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling 200 12ms","method":"POST","requestID":"ff98c0c0-4910-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd61b42e-800e-4986-9be6-90f9ea4fe4c6': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd61b42e-800e-4986-9be6-90f9ea4fe4c6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"ba434614-04fb-4bf0-869c-32653bd5ab57","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.8427818} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff9b0ab0-4910-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc18ecd1-4de5-4339-80ab-9a82e2b24a2d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.8440666} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa62a7b22-5319-447a-bac9-11f6e9716508","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44807103-7456-4e83-bac4-c029032b3fc5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.8507786} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.364508,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ff9b0ab0-4910-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a62a7b22-5319-447a-bac9-11f6e9716508","object_type":"device","rebac_allow":false,"scope_allow":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":"ff9b0ab0-4910-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff9b0ab0-4910-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling 200 14ms","method":"POST","requestID":"ff9b0ab0-4910-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/a62a7b22-5319-447a-bac9-11f6e9716508/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6 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":"9fbcb53880cc21bd5bc3ac565fe0cc23"} experiment-1 | {"level":"info","message":"DELETE /experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6 204 159ms","method":"DELETE","requestID":"9fbcb53880cc21bd5bc3ac565fe0cc23","responseTime":159,"status":204,"url":"/experiments/fd61b42e-800e-4986-9be6-90f9ea4fe4c6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2991","request_time":"4.086","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b689fdbf50f4ebc40c21f94258b95716"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"d15362a46799f6b73d8a486c5d5a2752","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"d15362a46799f6b73d8a486c5d5a2752"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"1ff55c83144158225e9420151aec9af6","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"1ff55c83144158225e9420151aec9af6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU","level":"info","message":"auth send jwt","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.771","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ebdf3121326edc5ca6bb8d770c4b8e14"} device-1 | {"level":"info","message":"postDevices called","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.741255,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752282,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","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/8fcf7fec-968a-465e-9f1e-ff5f0bfb6bc6' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"91ba4ae6-8dcd-4c4d-be33-d862cdd44a23","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.9445484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","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/a62a7b22-5319-447a-bac9-11f6e9716508' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da388dfb-74ed-421e-b559-cc3fadc461af","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.950961} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c4e7493d-8475-481e-ba24-f78811bc3862","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.9602928} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4edd723f-a490-4d96-8d6b-c2aba4bd2dc6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.960474} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"bb71b070-bc96-45cd-b379-d602af1383f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.9654577} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"5a689c8c96fbbc3fd3b0eba37db3600e","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU","level":"info","message":"auth send jwt","requestID":"a9d1278a546057e4636514bfef07b019"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a9d1278a546057e4636514bfef07b019","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a9d1278a546057e4636514bfef07b019"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.080606,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a9d1278a546057e4636514bfef07b019","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752282,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4Mn0.BrbT5wWxYjyuU7P7_ofMbUg-JCVnuxSjYe21U5EjPcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4a49fa78-7ef8-4f33-8f51-a98c9c40618a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752282.9973242} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edb52d28-0c62-4e2d-805d-5522e6bcad0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.0033836} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"9be3e445-0078-442f-bbbd-18233d42edb4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.0162601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"897caafd-9deb-4f8a-9afd-b0140f0df1bd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.0165443} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:23.016244672Z"}]},"request_id":"0be987c6-45d2-46d9-86fc-fa0dcff91000","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.0228395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a9d1278a546057e4636514bfef07b019"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"a9d1278a546057e4636514bfef07b019","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a9d1278a546057e4636514bfef07b019"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4M30.f6MrANVxVogbMV3J5BX0SYRew9nAjgW8jSVZgfeJHjw","level":"info","message":"auth send jwt","requestID":"f4c88018a1c7d774380eddb55d19ada6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f4c88018a1c7d774380eddb55d19ada6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f4c88018a1c7d774380eddb55d19ada6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.303105,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f4c88018a1c7d774380eddb55d19ada6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752283,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4M30.f6MrANVxVogbMV3J5BX0SYRew9nAjgW8jSVZgfeJHjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f4c88018a1c7d774380eddb55d19ada6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"d577e7cf-9517-45c7-ac95-519be387426b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.5257113} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f4c88018a1c7d774380eddb55d19ada6","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d54b10b-ede6-439e-a55d-50475c96a803","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.534003} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f4c88018a1c7d774380eddb55d19ada6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"e9ec6006-4012-434f-bfe1-35d4dd3712cd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752283.5487933} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4c88018a1c7d774380eddb55d19ada6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f4c88018a1c7d774380eddb55d19ada6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f4c88018a1c7d774380eddb55d19ada6"} device-1 | {"level":"info","message":"PATCH /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563 200 43ms","method":"PATCH","requestID":"f4c88018a1c7d774380eddb55d19ada6","responseTime":43,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4M30.f6MrANVxVogbMV3J5BX0SYRew9nAjgW8jSVZgfeJHjw","level":"info","message":"auth send jwt","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244791,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752283,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4M30.f6MrANVxVogbMV3J5BX0SYRew9nAjgW8jSVZgfeJHjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe"} gateway-1 | {"time_local":"23/Jul/2024:16:31:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/websocket 200 23ms","method":"POST","requestID":"dc70bc5b4651e97efe8d1e2c1eece9fe","responseTime":23,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1db74a09a844f7a1896aecfb599b42a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"1db74a09a844f7a1896aecfb599b42a4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cc286c7b-3348-4db0-b51a-97e07e367751/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":"1db74a09a844f7a1896aecfb599b42a4"} device-1 | {"level":"info","message":"OPTIONS /devices/cc286c7b-3348-4db0-b51a-97e07e367751/websocket 200 2ms","method":"OPTIONS","requestID":"1db74a09a844f7a1896aecfb599b42a4","responseTime":2,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362718,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a97b2bac0e3fb0eaf47bd46404d3848e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/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":"a97b2bac0e3fb0eaf47bd46404d3848e"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/websocket 200 23ms","method":"POST","requestID":"a97b2bac0e3fb0eaf47bd46404d3848e","responseTime":23,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"e7d993a1edd39b1772cd759d7c171c8d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7d993a1edd39b1772cd759d7c171c8d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7d993a1edd39b1772cd759d7c171c8d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148784,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e7d993a1edd39b1772cd759d7c171c8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7d993a1edd39b1772cd759d7c171c8d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"5f86645e-bc6e-48a3-a647-f69f01898d23","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.0849168} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7d993a1edd39b1772cd759d7c171c8d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7d993a1edd39b1772cd759d7c171c8d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7d993a1edd39b1772cd759d7c171c8d"} device-1 | {"level":"info","message":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? 200 19ms","method":"GET","requestID":"e7d993a1edd39b1772cd759d7c171c8d","responseTime":19,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"e90951b47c136a48f47a41dcfeadf43c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e90951b47c136a48f47a41dcfeadf43c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e90951b47c136a48f47a41dcfeadf43c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248092,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e90951b47c136a48f47a41dcfeadf43c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e90951b47c136a48f47a41dcfeadf43c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:23.016244672Z"}]},"request_id":"5a835094-83ce-45b9-b5af-cf432182dd4f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.1136014} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e90951b47c136a48f47a41dcfeadf43c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e90951b47c136a48f47a41dcfeadf43c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e90951b47c136a48f47a41dcfeadf43c"} device-1 | {"level":"info","message":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? 200 21ms","method":"GET","requestID":"e90951b47c136a48f47a41dcfeadf43c","responseTime":21,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dc58f94c79ca9159dcfebaafff90e53b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.751027,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"dc58f94c79ca9159dcfebaafff90e53b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dc58f94c79ca9159dcfebaafff90e53b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to run experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to book experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully booked experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00fff1e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676173,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828109,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"00fff1e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00fff1e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"e8fc950c-fb56-44a2-92c5-1f926cf5d472","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.1953557} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:23.016244672Z"}]},"request_id":"accfa80b-f8e7-4a54-8a57-e70e21faed3e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.1987512} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00fff1e0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? 200 24ms","method":"GET","requestID":"00ffa3c0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00fff1e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? 200 22ms","method":"GET","requestID":"00fff1e0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Setting up experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully set up experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"010bb1b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"010c26e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"010c9c10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242008,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"010bb1b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"010bb1b0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.60489,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully running experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"010c26e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"010c26e0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.698369,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32a93668-8863-4047-9bd3-43ce21c2e252","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.2757459} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"010c9c10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","rebac_allow":false,"scope_allow":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":"010c9c10-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:23.016244672Z"}]},"request_id":"e95ef675-8d14-469e-8e79-9e1521ecc8b1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.280724} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"010c26e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"6929fd67-d380-494f-91e2-0af24d200d58","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.2846878} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"010bb1b0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"010c9c10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling 200 23ms","method":"POST","requestID":"010c9c10-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01117e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"010c26e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? 200 39ms","method":"GET","requestID":"010c26e0-4911-11ef-863d-25b977f1d961","responseTime":39,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8d8dfd63-cdbd-4410-a08c-b8e55e922e52#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8d8dfd63-cdbd-4410-a08c-b8e55e922e52","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"bb8185db-b417-431e-99a6-d2f8ebf79fc7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.2999606} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"010bb1b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b84c3a26-2e12-48e1-bd16-a85dc27b0bba","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3010707} device-1 | {"level":"info","message":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? 200 45ms","method":"GET","requestID":"010bb1b0-4911-11ef-863d-25b977f1d961","responseTime":45,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"dc58f94c79ca9159dcfebaafff90e53b","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ec48c44-0566-4bcb-aa87-d8290466ef94","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3060153} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.096861,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"011352d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"01117e10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","rebac_allow":false,"scope_allow":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":"01117e10-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01117e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling 200 18ms","method":"POST","requestID":"01117e10-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d62c5cb-a5ab-435d-b558-57112c54a552","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3181486} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.82309,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"011352d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","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":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.197","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 191ms","method":"POST","requestID":"dc58f94c79ca9159dcfebaafff90e53b","responseTime":191,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"011352d0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"011352d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling 200 16ms","method":"POST","requestID":"011352d0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"a676979b205a85751f5e5e1039b2ddbf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a676979b205a85751f5e5e1039b2ddbf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01166010-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a676979b205a85751f5e5e1039b2ddbf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8d281c6-75a4-4db2-b71c-d1a8beefe93b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3358142} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.103962,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"01166010-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","rebac_allow":false,"scope_allow":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":"01166010-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147695,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a676979b205a85751f5e5e1039b2ddbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a676979b205a85751f5e5e1039b2ddbf","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01166010-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling 200 15ms","method":"POST","requestID":"01166010-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Building connection plan","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"f3b2a627-c1db-474a-b1aa-43a1b909d2a9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"ebf42570-abc9-4b3e-b187-36ae2adccd47"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2cd782f8-bf47-4fee-ae6c-c2b9c2b9edf3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:22.960281527Z"}]},"request_id":"3ec83dcc-b814-43aa-8e82-3e19e76553da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3465955} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a676979b205a85751f5e5e1039b2ddbf","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"01194640-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.889069,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a676979b205a85751f5e5e1039b2ddbf"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a676979b205a85751f5e5e1039b2ddbf"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"01194640-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} device-1 | {"level":"info","message":"GET /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563? 200 23ms","method":"GET","requestID":"a676979b205a85751f5e5e1039b2ddbf","responseTime":23,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01194640-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0","level":"info","message":"auth send jwt","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225207,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"43d467e573b7f756c7a2d6f7a29d3b2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752285,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4NX0.sktInt2QMTMV5SVZddwBdXss_Z11n6fnjWHLKbboJa0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8f8c934f-3ae8-407c-968c-43544a83d43d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3658035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d6fe2e7-7241-4a64-a1ca-eb68fccd2eca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3660626} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"01194640-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:23.016244672Z"}]},"request_id":"02fe958d-3986-4e65-babe-3102d240d851","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.3711946} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"01194640-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"01194640-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257'","requestID":"01194640-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257'","requestID":"01194640-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"01194640-4911-11ef-863d-25b977f1d961"} 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":"01194640-4911-11ef-863d-25b977f1d961","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":"43d467e573b7f756c7a2d6f7a29d3b2e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e"} device-1 | {"level":"info","message":"GET /devices/cc286c7b-3348-4db0-b51a-97e07e367751? 200 25ms","method":"GET","requestID":"43d467e573b7f756c7a2d6f7a29d3b2e","responseTime":25,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"01194640-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dc58f94c79ca9159dcfebaafff90e53b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"012442c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e21d3b5-89ae-46ca-9cb1-d2205389ea20","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.42465} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43634,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"012442c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","rebac_allow":false,"scope_allow":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":"012442c0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"012442c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling 200 9ms","method":"POST","requestID":"012442c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01261780-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c3b9d48-7d56-48b1-a32c-4471035dbf6b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752285.4374557} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.176057,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"01261780-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","rebac_allow":false,"scope_allow":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":"01261780-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01261780-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling 200 9ms","method":"POST","requestID":"01261780-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling"} device-1 | {"device":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1093044921476522843 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:P25V\r\na=ice-pwd:3Ip0gZ8oyX7APxvwbJo9tsj8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1A:8C:3A:C8:FA:66:F6:2C:02:62:1E:25:23:FC:53:D6:31:05:B5:9E:D7:7F:7C:D5:EF:9B:89:E1:EF:FC:A1:E2\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1509823112 1 udp 2113937151 a13db93c-1d27-4e49-8190-3e84db638a0b.local 40283 typ host generation 0 ufrag P25V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3721623799 1 udp 1677729535 141.24.211.56 40283 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag P25V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/09928753-5919-4903-aeae-20f98f0e2257' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cc286c7b-3348-4db0-b51a-97e07e367751","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/cc286c7b-3348-4db0-b51a-97e07e367751'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"652e4cccef81fab5d51811a931009c0b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"652e4cccef81fab5d51811a931009c0b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"}}},"level":"info","message":"received a callback","requestID":"652e4cccef81fab5d51811a931009c0b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"652e4cccef81fab5d51811a931009c0b","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"652e4cccef81fab5d51811a931009c0b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk","level":"info","message":"auth send jwt","requestID":"3538e7860f0d2d63e39d8d60bceded1f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3538e7860f0d2d63e39d8d60bceded1f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"3538e7860f0d2d63e39d8d60bceded1f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.243547,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3538e7860f0d2d63e39d8d60bceded1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752287,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3538e7860f0d2d63e39d8d60bceded1f","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"3538e7860f0d2d63e39d8d60bceded1f"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 32ms","method":"GET","requestID":"3538e7860f0d2d63e39d8d60bceded1f","responseTime":32,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} gateway-1 | {"time_local":"23/Jul/2024:16:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3538e7860f0d2d63e39d8d60bceded1f"} device-1 | {"device":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk","level":"info","message":"auth send jwt","requestID":"6b974ff8e85761282813d77460a56172"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b974ff8e85761282813d77460a56172","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"6b974ff8e85761282813d77460a56172"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.176159,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6b974ff8e85761282813d77460a56172","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752287,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b974ff8e85761282813d77460a56172","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"6b974ff8e85761282813d77460a56172"} gateway-1 | {"time_local":"23/Jul/2024:16:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b974ff8e85761282813d77460a56172"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 22ms","method":"GET","requestID":"6b974ff8e85761282813d77460a56172","responseTime":22,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk","level":"info","message":"auth send jwt","requestID":"0e608b6e265547343dcb25bf7f029925"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"0e608b6e265547343dcb25bf7f029925","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"0e608b6e265547343dcb25bf7f029925"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.57344,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0e608b6e265547343dcb25bf7f029925","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752287,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4N30.XfZQWdZJ3KrKLhz9yPJ96s1gkTAlmXffsdSRaJiT0zk"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0e608b6e265547343dcb25bf7f029925","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"0e608b6e265547343dcb25bf7f029925"} gateway-1 | {"time_local":"23/Jul/2024:16:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e608b6e265547343dcb25bf7f029925"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 27ms","method":"GET","requestID":"0e608b6e265547343dcb25bf7f029925","responseTime":27,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4","level":"info","message":"auth send jwt","requestID":"3940de3c27fb0b9a86ef58449aba2a57"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3940de3c27fb0b9a86ef58449aba2a57","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"3940de3c27fb0b9a86ef58449aba2a57"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.92586,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3940de3c27fb0b9a86ef58449aba2a57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752288,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3940de3c27fb0b9a86ef58449aba2a57","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"3940de3c27fb0b9a86ef58449aba2a57"} gateway-1 | {"time_local":"23/Jul/2024:16:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3940de3c27fb0b9a86ef58449aba2a57"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 17ms","method":"GET","requestID":"3940de3c27fb0b9a86ef58449aba2a57","responseTime":17,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3216aa8605331e66a7b9083a9b9696e2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3216aa8605331e66a7b9083a9b9696e2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"}}},"level":"info","message":"received a callback","requestID":"3216aa8605331e66a7b9083a9b9696e2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"02b5df40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F09928753-5919-4903-aeae-20f98f0e2257","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ecc9b19-88bb-4dc4-97e6-0a3ccef0e3e4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.059595} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.96379,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"02b5df40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","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":"02b5df40-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4","level":"info","message":"auth send jwt","requestID":"73658ce59dfee9f7197b311e7db199e1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"73658ce59dfee9f7197b311e7db199e1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"73658ce59dfee9f7197b311e7db199e1"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.457461,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"73658ce59dfee9f7197b311e7db199e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752288,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"73658ce59dfee9f7197b311e7db199e1","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"73658ce59dfee9f7197b311e7db199e1"} gateway-1 | {"time_local":"23/Jul/2024:16:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73658ce59dfee9f7197b311e7db199e1"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 19ms","method":"GET","requestID":"73658ce59dfee9f7197b311e7db199e1","responseTime":19,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"02b5df40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/09928753-5919-4903-aeae-20f98f0e2257 200 154ms","method":"GET","requestID":"02b5df40-4911-11ef-863d-25b977f1d961","responseTime":154,"status":200,"url":"/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4","level":"info","message":"auth send jwt","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.859463,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b88dcd9e68054f0baa0e4b94fd10afd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752288,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 313ms","method":"POST","requestID":"3216aa8605331e66a7b9083a9b9696e2","responseTime":313,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.318","http_referrer":"","http_user_agent":"node-fetch","requestID":"3216aa8605331e66a7b9083a9b9696e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02e46950-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3"} experiment-1 | {"level":"info","message":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 200 109ms","method":"GET","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3","responseTime":109,"status":200,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} gateway-1 | {"time_local":"23/Jul/2024:16:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b88dcd9e68054f0baa0e4b94fd10afd3"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"161a937d-8d30-4f28-9bee-5825187ad7e0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.3659444} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.327543,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"02e46950-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","rebac_allow":false,"scope_allow":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":"02e46950-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4","level":"info","message":"auth send jwt","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02e46950-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e87caaaa420eee82984ffdc6405dd0bf","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling 200 18ms","method":"POST","requestID":"02e46950-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02e7ebc0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5cef761-84b2-43bf-88b1-a76ed2015ea4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.3900933} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.13623,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"02e7ebc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","rebac_allow":false,"scope_allow":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":"02e7ebc0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.633928,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e87caaaa420eee82984ffdc6405dd0bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752288,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"e87caaaa420eee82984ffdc6405dd0bf","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02e7ebc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling 200 22ms","method":"POST","requestID":"02e7ebc0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Attempting to finish experiment","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"02ed1be0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.235888,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"02ed1be0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752288,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OH0.CkX3ftFECeKmSS5wnhiKRm4-iVYTenUxsd1YNwtfaA4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"02ed1be0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257","device":"cc286c7b-3348-4db0-b51a-97e07e367751","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8e9adbfe-3250-4830-ae41-dca86d6aa563","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/09928753-5919-4903-aeae-20f98f0e2257' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d0c82ee4d349a1a97846eee51125fe1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4d0c82ee4d349a1a97846eee51125fe1","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39e420339892642611820cdbc55b1824","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"}}},"level":"info","message":"received a callback","requestID":"4d0c82ee4d349a1a97846eee51125fe1"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"39e420339892642611820cdbc55b1824","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"}}},"level":"info","message":"received a callback","requestID":"39e420339892642611820cdbc55b1824"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F09928753-5919-4903-aeae-20f98f0e2257': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F09928753-5919-4903-aeae-20f98f0e2257","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"fb026238-6797-41aa-9e7c-5b1dfcf3911f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.4527557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9c93a36-40ed-4fd4-91e4-0d34a45cbc0e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.4531372} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"02ed1be0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"09928753-5919-4903-aeae-20f98f0e2257","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"02ed1be0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/09928753-5919-4903-aeae-20f98f0e2257 204 423ms","method":"DELETE","requestID":"02ed1be0-4911-11ef-863d-25b977f1d961","responseTime":423,"status":204,"url":"/peerconnections/09928753-5919-4903-aeae-20f98f0e2257"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"},"level":"info","message":"Successfully finished experiment","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0343c760-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcc286c7b-3348-4db0-b51a-97e07e367751","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1d07dc1-4d24-4286-8595-50e5d44149fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752288.9930956} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.175411,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0343c760-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cc286c7b-3348-4db0-b51a-97e07e367751","object_type":"device","rebac_allow":false,"scope_allow":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":"0343c760-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0343c760-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling 200 19ms","method":"POST","requestID":"0343c760-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/cc286c7b-3348-4db0-b51a-97e07e367751/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8d8dfd63-cdbd-4410-a08c-b8e55e922e52': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8d8dfd63-cdbd-4410-a08c-b8e55e922e52","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"dc963fee-4021-4112-92d8-059ec374a7b9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.0032406} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"534dcb6a-f154-4eba-a2d8-2cf1310ac220","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.003709} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"034797f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"e87caaaa420eee82984ffdc6405dd0bf","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e9adbfe-3250-4830-ae41-dca86d6aa563","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"066ca7d5-3d06-443c-924d-c30298e7ed0d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.0163343} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.801854,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"034797f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563","object_type":"device","rebac_allow":false,"scope_allow":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":"034797f0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"034797f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling 200 17ms","method":"POST","requestID":"034797f0-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.716","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e87caaaa420eee82984ffdc6405dd0bf"} experiment-1 | {"level":"info","message":"DELETE /experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52 204 705ms","method":"DELETE","requestID":"e87caaaa420eee82984ffdc6405dd0bf","responseTime":705,"status":204,"url":"/experiments/8d8dfd63-cdbd-4410-a08c-b8e55e922e52"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2598","request_time":"5.501","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"aa6f69905230947a29d51d8e7c6c689c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 641ms","method":"POST","requestID":"4d0c82ee4d349a1a97846eee51125fe1","responseTime":641,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.645","http_referrer":"","http_user_agent":"node-fetch","requestID":"4d0c82ee4d349a1a97846eee51125fe1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 639ms","method":"POST","requestID":"39e420339892642611820cdbc55b1824","responseTime":639,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.646","http_referrer":"","http_user_agent":"node-fetch","requestID":"39e420339892642611820cdbc55b1824"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"3b5a45a70c421fb40bd05a799074e557"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3b5a45a70c421fb40bd05a799074e557","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b5a45a70c421fb40bd05a799074e557"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"4.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":"4f8d1947977bc2631d70e95e5fd618ba"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8e9adbfe-3250-4830-ae41-dca86d6aa563' closed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.943563,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b5a45a70c421fb40bd05a799074e557","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","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/cc286c7b-3348-4db0-b51a-97e07e367751' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"975591c6-5c62-4162-8f60-f41a2fc0ce7d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1296248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8563aa6-8202-440d-9439-09e1c51a7a85","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1364684} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8abe0469-bd20-4373-9c45-931235c2b7a9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.145708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86135a8f-ed6f-4956-b747-5a047ed40c58","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1458635} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"2cfab9e4-d7ba-4ef0-ba53-e8a2254a92e2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1513212} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b5a45a70c421fb40bd05a799074e557"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b5a45a70c421fb40bd05a799074e557"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"3b5a45a70c421fb40bd05a799074e557","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"c994b3ce9625473bff52702214b864d9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c994b3ce9625473bff52702214b864d9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c994b3ce9625473bff52702214b864d9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.755018,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c994b3ce9625473bff52702214b864d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e696c408-1e9d-486a-af77-d02debea3156","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.178023} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0db2938f-2da0-4cfb-8910-fc228d40ffa4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1834059} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8f9f28ad-ea38-487a-9631-1924b02a826b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.1999567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e256c80-eb33-4c23-9380-5f00c7c8fe12","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.2002444} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c994b3ce9625473bff52702214b864d9"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c994b3ce9625473bff52702214b864d9"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","responseTime":47,"status":201,"url":"/devices?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"f0250ff1-aa03-4bb9-91d0-d92e04fc8831","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.2049925} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c994b3ce9625473bff52702214b864d9","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"c76ea466826e191462dcf547988d9833"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c76ea466826e191462dcf547988d9833","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c76ea466826e191462dcf547988d9833"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.763944,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c76ea466826e191462dcf547988d9833","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c76ea466826e191462dcf547988d9833","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"bba48d047821845e1dbc55b06eb30123"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bba48d047821845e1dbc55b06eb30123","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"c976c74f-35ea-4e87-a22b-a1b97a9fe725","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7419343} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bba48d047821845e1dbc55b06eb30123"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c76ea466826e191462dcf547988d9833","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857104,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bba48d047821845e1dbc55b06eb30123","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bba48d047821845e1dbc55b06eb30123","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a83c9c0f-3ac9-47ef-91e1-ef08d2f92fce","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7493918} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"c76ea466826e191462dcf547988d9833","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"e94a7ff8-f898-4d4e-a8aa-199da299832d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7615619} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c76ea466826e191462dcf547988d9833","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c76ea466826e191462dcf547988d9833"} device-1 | {"level":"info","message":"PATCH /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37 200 36ms","method":"PATCH","requestID":"c76ea466826e191462dcf547988d9833","responseTime":36,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c76ea466826e191462dcf547988d9833"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"54f1e05d-9a90-4885-bd8c-2d7149a7fe75","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7708378} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"bba48d047821845e1dbc55b06eb30123","responseTime":8,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65e6a838-074b-4455-b952-d6248c371020","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7794738} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bba48d047821845e1dbc55b06eb30123","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699977,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"f457cfd0-502f-43ff-b8b0-7a072b9b81fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.7919931} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bba48d047821845e1dbc55b06eb30123","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bba48d047821845e1dbc55b06eb30123"} device-1 | {"level":"info","message":"PATCH /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584 200 52ms","method":"PATCH","requestID":"bba48d047821845e1dbc55b06eb30123","responseTime":52,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.058","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bba48d047821845e1dbc55b06eb30123"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"aa283267c10d5d5cddbd69643b6a8b8c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aa283267c10d5d5cddbd69643b6a8b8c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7"} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/websocket 200 22ms","method":"POST","requestID":"d494fe823a8bc6fa0a4ab9019caf8cb7","responseTime":22,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aa283267c10d5d5cddbd69643b6a8b8c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660098,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"aa283267c10d5d5cddbd69643b6a8b8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa283267c10d5d5cddbd69643b6a8b8c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aa283267c10d5d5cddbd69643b6a8b8c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"aa283267c10d5d5cddbd69643b6a8b8c"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/websocket 200 26ms","method":"POST","requestID":"aa283267c10d5d5cddbd69643b6a8b8c","responseTime":26,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"6479588322fdae92cd4c3f9a9b5c160a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6479588322fdae92cd4c3f9a9b5c160a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6479588322fdae92cd4c3f9a9b5c160a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724845,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6479588322fdae92cd4c3f9a9b5c160a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6479588322fdae92cd4c3f9a9b5c160a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"1a56869f-d73a-42de-8d7a-3c20477c9378","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.851136} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6479588322fdae92cd4c3f9a9b5c160a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6479588322fdae92cd4c3f9a9b5c160a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6479588322fdae92cd4c3f9a9b5c160a"} device-1 | {"level":"info","message":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? 200 13ms","method":"GET","requestID":"6479588322fdae92cd4c3f9a9b5c160a","responseTime":13,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"18615058f8d26dab7673001fc2d6822c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"18615058f8d26dab7673001fc2d6822c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18615058f8d26dab7673001fc2d6822c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667594,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"18615058f8d26dab7673001fc2d6822c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18615058f8d26dab7673001fc2d6822c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"d81a5d47-3c45-4ff7-a8e7-36f59d015a3d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.8697054} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"18615058f8d26dab7673001fc2d6822c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18615058f8d26dab7673001fc2d6822c"} device-1 | {"level":"info","message":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? 200 13ms","method":"GET","requestID":"18615058f8d26dab7673001fc2d6822c","responseTime":13,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18615058f8d26dab7673001fc2d6822c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs","level":"info","message":"auth send jwt","requestID":"c14fc2988d50d91585f50c684ee838b3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c14fc2988d50d91585f50c684ee838b3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c14fc2988d50d91585f50c684ee838b3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.692929,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c14fc2988d50d91585f50c684ee838b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c14fc2988d50d91585f50c684ee838b3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to run experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to book experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully booked experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03d50ae0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164279,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.593256,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03d50ae0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03d50ae0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"6f7baf40-adc1-4a52-8a15-9b9a5e2e353d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.945069} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"918c0969-ce46-47cd-a1dd-69943fe86992","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752289.9464946} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"03d50ae0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? 200 22ms","method":"GET","requestID":"03d4bcc0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03d50ae0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? 200 22ms","method":"GET","requestID":"03d50ae0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Setting up experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully set up experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03e07c90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03e0cab0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03e13fe0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully running experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.691092,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03e07c90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"03e07c90-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047339,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03e0cab0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"03e0cab0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29da12e5-c0fd-490b-b180-b1c1c7bf4818","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0248196} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.9072,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03e13fe0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","rebac_allow":false,"scope_allow":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":"03e13fe0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"cba29e16-29c2-4b5e-bd79-abde9a1e4cc7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0296571} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"007a7bf6-1cc1-4e7c-bba5-20d42e4265a1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0321012} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"03e07c90-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"03e0cab0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03e13fe0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling 200 26ms","method":"POST","requestID":"03e13fe0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03e621e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03e07c90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? 200 40ms","method":"GET","requestID":"03e07c90-4911-11ef-863d-25b977f1d961","responseTime":40,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03e0cab0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F07191ced-8be2-47bd-aa95-2bf8b2460e91#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F07191ced-8be2-47bd-aa95-2bf8b2460e91","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"a7a7c216-91d0-4c40-8cc6-a47b184ebbfa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0487142} device-1 | {"level":"info","message":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? 200 40ms","method":"GET","requestID":"03e0cab0-4911-11ef-863d-25b977f1d961","responseTime":40,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75cbe80d-f9d2-4820-a128-2d8afc19ab64","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0493033} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"c14fc2988d50d91585f50c684ee838b3","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ee479a7-c12c-43b6-84b0-0611a9fdc090","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0534816} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.275506,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03e78170-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03e621e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","rebac_allow":false,"scope_allow":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":"03e621e0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03e621e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling 200 16ms","method":"POST","requestID":"03e621e0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6dddad1e-ceb3-4bb5-9755-cbfb7b242f70","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0629768} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.33272,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03e78170-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","rebac_allow":false,"scope_allow":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":"03e78170-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c14fc2988d50d91585f50c684ee838b3"} gateway-1 | {"time_local":"23/Jul/2024:16:31:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 185ms","method":"POST","requestID":"c14fc2988d50d91585f50c684ee838b3","responseTime":185,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03e78170-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling 200 13ms","method":"POST","requestID":"03e78170-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5MH0.nVGjKj6Dob8V07vgSvkCQawmXnMeFs5m4gzpP1LO1UI","level":"info","message":"auth send jwt","requestID":"07b15697ddabfd05c58341544d770e9b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07b15697ddabfd05c58341544d770e9b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03ea4090-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07b15697ddabfd05c58341544d770e9b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cb2702c-2054-4967-9fbb-db2b8f1337d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0786204} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050544,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.017067,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07b15697ddabfd05c58341544d770e9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752290,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5MH0.nVGjKj6Dob8V07vgSvkCQawmXnMeFs5m4gzpP1LO1UI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07b15697ddabfd05c58341544d770e9b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03ea4090-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","rebac_allow":false,"scope_allow":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":"03ea4090-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.145696485Z"}]},"request_id":"ef0e7f28-a65b-4fb1-8a38-21de43b9572f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.0837052} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03ea4090-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling 200 11ms","method":"POST","requestID":"03ea4090-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"07b15697ddabfd05c58341544d770e9b","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Building connection plan","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c6568a48-4e55-4976-8c8a-469a1b468852"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a0418337-fcd4-446e-ad7b-88344f0ddce4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"80e1b26e-02de-47a8-a5de-e0988e376977"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c14fc2988d50d91585f50c684ee838b3"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c14fc2988d50d91585f50c684ee838b3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07b15697ddabfd05c58341544d770e9b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07b15697ddabfd05c58341544d770e9b"} device-1 | {"level":"info","message":"GET /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584? 200 15ms","method":"GET","requestID":"07b15697ddabfd05c58341544d770e9b","responseTime":15,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.805337,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03ec8a80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752289,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI4OX0.ZfLodc6CSm65Ntd2JbdapI6BtZyi6z62z2JLprvSKPs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5MH0.nVGjKj6Dob8V07vgSvkCQawmXnMeFs5m4gzpP1LO1UI","level":"info","message":"auth send jwt","requestID":"d646e0727699ba43a97a507cb8ec959e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d646e0727699ba43a97a507cb8ec959e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d646e0727699ba43a97a507cb8ec959e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907011,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d646e0727699ba43a97a507cb8ec959e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752290,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5MH0.nVGjKj6Dob8V07vgSvkCQawmXnMeFs5m4gzpP1LO1UI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d646e0727699ba43a97a507cb8ec959e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"4152b0ef-5e06-423f-9e84-e4a8a295fbf9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.1057463} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3f8cbf2-1b08-43b9-8b44-e7c9348e7e63","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.106091} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:29.199945433Z"}]},"request_id":"41c0571d-cba0-4cd5-990f-810aebbd5c37","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.1074495} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d646e0727699ba43a97a507cb8ec959e","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d646e0727699ba43a97a507cb8ec959e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d646e0727699ba43a97a507cb8ec959e"} device-1 | {"level":"info","message":"GET /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37? 200 26ms","method":"GET","requestID":"d646e0727699ba43a97a507cb8ec959e","responseTime":26,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e'","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e'","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961","responseTime":37,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"03ec8a80-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c14fc2988d50d91585f50c684ee838b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03f711d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d157e6c-afae-4dca-b5ad-1af58e7412b6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.1625059} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912344,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03f711d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","rebac_allow":false,"scope_allow":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":"03f711d0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03f711d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling 200 10ms","method":"POST","requestID":"03f711d0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03f90da0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6fac597-0e5e-4ca8-bee2-3553d2102f9f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752290.1749327} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.919141,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"03f90da0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","rebac_allow":false,"scope_allow":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":"03f90da0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03f90da0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling 200 9ms","method":"POST","requestID":"03f90da0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling"} device-1 | {"device":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/66fe15af-dc39-418d-afb5-eb52446f347e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3cf2ef7d4dafbdf2d5387cd2f6dbaa9c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3cf2ef7d4dafbdf2d5387cd2f6dbaa9c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"}}},"level":"info","message":"received a callback","requestID":"3cf2ef7d4dafbdf2d5387cd2f6dbaa9c"} device-1 | {"device":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"3cf2ef7d4dafbdf2d5387cd2f6dbaa9c","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"3cf2ef7d4dafbdf2d5387cd2f6dbaa9c"} device-1 | {"data":{"peerconnection":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"66fe15af-dc39-418d-afb5-eb52446f347e","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/66fe15af-dc39-418d-afb5-eb52446f347e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7814ce4df035ea0fe79a74552ca7b4f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c7814ce4df035ea0fe79a74552ca7b4f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"}}},"level":"info","message":"received a callback","requestID":"c7814ce4df035ea0fe79a74552ca7b4f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0535d360-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66fe15af-dc39-418d-afb5-eb52446f347e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"074548bc-f36d-4aec-bc7b-309cb38da73c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.252749} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.986997,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0535d360-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e","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":"0535d360-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0535d360-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e 200 13ms","method":"GET","requestID":"0535d360-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"c7814ce4df035ea0fe79a74552ca7b4f","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"c7814ce4df035ea0fe79a74552ca7b4f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"053ab560-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5da22f26-9965-47d2-8c62-a672a25b2121","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.28456} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.042952,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"053ab560-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","rebac_allow":false,"scope_allow":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":"053ab560-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"053ab560-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling 200 14ms","method":"POST","requestID":"053ab560-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"053d2660-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd44975a-e006-474c-9e2e-d5b8f99fc7c4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.2992618} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.581549,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"053d2660-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","rebac_allow":false,"scope_allow":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":"053d2660-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"053d2660-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling 200 12ms","method":"POST","requestID":"053d2660-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.439652,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"06fc1bebedd1a7c22e4578b010bcfa3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91 HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c"} experiment-1 | {"level":"info","message":"GET /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91 200 20ms","method":"GET","requestID":"06fc1bebedd1a7c22e4578b010bcfa3c","responseTime":20,"status":200,"url":"/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c731cbbd79fd4adba1d390e4e50edd73","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.229731,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c731cbbd79fd4adba1d390e4e50edd73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c731cbbd79fd4adba1d390e4e50edd73","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Attempting to finish experiment","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"05495b60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.192565,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"05495b60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"05495b60-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"616b1160-028b-4ca7-9f1b-fff3d8cd7584","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/66fe15af-dc39-418d-afb5-eb52446f347e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66fe15af-dc39-418d-afb5-eb52446f347e': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66fe15af-dc39-418d-afb5-eb52446f347e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"546af8c4-d81c-47c8-a810-5d073ac6255b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.403786} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbf90911-5f56-49b9-8998-36abe5b4e8c1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.4045484} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60f40a5812dfd9bfcffdbb0935335c77","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"60f40a5812dfd9bfcffdbb0935335c77","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"}}},"level":"info","message":"received a callback","requestID":"60f40a5812dfd9bfcffdbb0935335c77"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2232f4fc9dd919c675d4745987a184b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 17ms","method":"POST","requestID":"05495b60-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f2232f4fc9dd919c675d4745987a184b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"}}},"level":"info","message":"received a callback","requestID":"f2232f4fc9dd919c675d4745987a184b"} device-1 | {"data":{"peerconnection":"66fe15af-dc39-418d-afb5-eb52446f347e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"05495b60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e 204 57ms","method":"DELETE","requestID":"05495b60-4911-11ef-863d-25b977f1d961","responseTime":57,"status":204,"url":"/peerconnections/66fe15af-dc39-418d-afb5-eb52446f347e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"},"level":"info","message":"Successfully finished experiment","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0555de80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f626f7a-6a11-4af1-ad7d-889853049c32","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.4647462} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.026401,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0555de80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37","object_type":"device","rebac_allow":false,"scope_allow":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":"0555de80-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F07191ced-8be2-47bd-aa95-2bf8b2460e91': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F07191ced-8be2-47bd-aa95-2bf8b2460e91","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"019ec694-f8be-4bc2-8702-649235e715a4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.4722419} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0555de80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2595fe23-5ea6-4082-a0d1-7e330ac827e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.4727075} device-1 | {"level":"info","message":"POST /devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling 200 17ms","method":"POST","requestID":"0555de80-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"c731cbbd79fd4adba1d390e4e50edd73","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"055912d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F616b1160-028b-4ca7-9f1b-fff3d8cd7584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6f03b52-28c0-4cf2-898d-f2dd7695eb8e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.4853687} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.099206,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"055912d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584","object_type":"device","rebac_allow":false,"scope_allow":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":"055912d0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"055912d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling 200 16ms","method":"POST","requestID":"055912d0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/616b1160-028b-4ca7-9f1b-fff3d8cd7584/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c731cbbd79fd4adba1d390e4e50edd73"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.726","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"48163cdf6db4ac37da4ff8eaea750a62"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.753","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5a4088b5b6ea3c4729000b1e51c89386"} experiment-1 | {"level":"info","message":"DELETE /experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91 204 199ms","method":"DELETE","requestID":"c731cbbd79fd4adba1d390e4e50edd73","responseTime":199,"status":204,"url":"/experiments/07191ced-8be2-47bd-aa95-2bf8b2460e91"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"60f40a5812dfd9bfcffdbb0935335c77","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"60f40a5812dfd9bfcffdbb0935335c77"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"f2232f4fc9dd919c675d4745987a184b","responseTime":146,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"cf7d246b93a46fe3080edcd93e19f80a"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.156","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2232f4fc9dd919c675d4745987a184b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cf7d246b93a46fe3080edcd93e19f80a","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/ae6d1f37-28b1-4d0b-b2b1-0c9cb6f79c37' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"cf7d246b93a46fe3080edcd93e19f80a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.918045,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cf7d246b93a46fe3080edcd93e19f80a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","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/616b1160-028b-4ca7-9f1b-fff3d8cd7584' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7197a79c-26e3-41eb-908a-9cc9a8d02e1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"212e6edd-8928-431a-b79b-1632d9c9238f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.5864294} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e8571b0-732d-41b5-8f60-55cf387e98c2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.5940785} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7197a79c-26e3-41eb-908a-9cc9a8d02e1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"845b4dfa-cb63-4778-8e7c-40ec827e68c2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6059043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77b4f5e0-5063-4268-ad8f-c106b9b76993","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.606172} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7197a79c-26e3-41eb-908a-9cc9a8d02e1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7197a79c-26e3-41eb-908a-9cc9a8d02e1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.605867754Z"}]},"request_id":"7f61f23c-4a91-4852-87ec-6fdadac314f6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6122878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cf7d246b93a46fe3080edcd93e19f80a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cf7d246b93a46fe3080edcd93e19f80a"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"cf7d246b93a46fe3080edcd93e19f80a","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"fef3861ec2171a2d11762f8e20d2996a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fef3861ec2171a2d11762f8e20d2996a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fef3861ec2171a2d11762f8e20d2996a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.727309,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fef3861ec2171a2d11762f8e20d2996a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e729e7b-f176-4b9f-a029-4ee9287074ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bfb8623c-d1d1-4548-a0d0-52c9dd7820ee","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6399598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"362ce3e7-07c2-477a-a870-ae69302be4d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6460512} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e729e7b-f176-4b9f-a029-4ee9287074ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5c32690e-60a9-480b-8135-47dd90761018","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6628697} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"818be9ab-1407-491f-a5be-9141fe470ab6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6631305} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e729e7b-f176-4b9f-a029-4ee9287074ff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e729e7b-f176-4b9f-a029-4ee9287074ff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.662851266Z"}]},"request_id":"2315f29b-c041-461c-ae09-873206846f04","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6688917} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fef3861ec2171a2d11762f8e20d2996a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fef3861ec2171a2d11762f8e20d2996a"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"fef3861ec2171a2d11762f8e20d2996a","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"fd2f3dc1bff1978add52176186d378bf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fd2f3dc1bff1978add52176186d378bf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fd2f3dc1bff1978add52176186d378bf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.70875,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fd2f3dc1bff1978add52176186d378bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb2c2af6-d739-4bb3-b430-001391ef679d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c9e98759-7957-4cd7-b8f7-71e85ac91ad1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.6967} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"991204da-0f7b-4a11-b578-b34739c16f3f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7025976} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb2c2af6-d739-4bb3-b430-001391ef679d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b27b6769-1d2a-48bc-9668-c79c651651ba","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7133808} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d14d63c-b1bc-44d1-9f46-8eb29a6617b1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7136652} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb2c2af6-d739-4bb3-b430-001391ef679d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb2c2af6-d739-4bb3-b430-001391ef679d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.713359553Z"}]},"request_id":"96167f12-361c-423a-953e-914330badc99","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.718107} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fd2f3dc1bff1978add52176186d378bf"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd2f3dc1bff1978add52176186d378bf"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"fd2f3dc1bff1978add52176186d378bf","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"0d58180921e896ea847342eb03db41d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0d58180921e896ea847342eb03db41d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0d58180921e896ea847342eb03db41d6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754034,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0d58180921e896ea847342eb03db41d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"899a93df-bacf-4178-b27d-7b11c8cae6de","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7493775} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c56dabda-677d-411f-bc05-8c2560e8e385","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7551951} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"532b24a8-b89b-442a-862a-41f6fb490d7d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7717173} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c621e1f7-2e62-4fd8-a994-28a4ce76be23","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.7719648} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.771694689Z"}]},"request_id":"62a2d9e2-ddf2-47e9-a6ba-bb8fb644cc31","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.777355} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0d58180921e896ea847342eb03db41d6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d58180921e896ea847342eb03db41d6"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"0d58180921e896ea847342eb03db41d6","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.044874,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c7ace76-8e76-44fb-bceb-83ba30d0c852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"37ce67fa-4dfd-49cd-9853-678e122bfdde","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8059225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16f9132a-b125-4b2e-8184-97aa0f7afc97","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8120642} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c7ace76-8e76-44fb-bceb-83ba30d0c852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b7f80de3-f8c9-4be5-af6d-fc80ba1df168","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8232055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed9d0447-562e-4abe-9eb5-674930d94673","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8235874} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c7ace76-8e76-44fb-bceb-83ba30d0c852","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9c7ace76-8e76-44fb-bceb-83ba30d0c852","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.823183387Z"}]},"request_id":"7b32659d-e6c0-43ec-a7f4-8e52c7ce0ddd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.828192} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"5d5f274cc2fcda42d0255bc0535e0fe6","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"ab6f43a57e89a0154e61e9103195e512"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ab6f43a57e89a0154e61e9103195e512","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ab6f43a57e89a0154e61e9103195e512"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.44625,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ab6f43a57e89a0154e61e9103195e512","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c7d3f833-fb21-43da-b906-e90fe7bef9c4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8600316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb32f367-f90c-4c6d-affa-c47492cb1e3c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8657832} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"45b17abf-211c-48a4-a276-d1913e864b79","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8831928} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4fdba845-a3ea-45cb-b312-d18dda080cb9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8834584} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.883172813Z"}]},"request_id":"8bf133b3-8735-4de6-96d7-5eaf92dfb85c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.8884459} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ab6f43a57e89a0154e61e9103195e512"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab6f43a57e89a0154e61e9103195e512"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"ab6f43a57e89a0154e61e9103195e512","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"0068cd23ad647f18eb81a29e9f325a55"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0068cd23ad647f18eb81a29e9f325a55","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0068cd23ad647f18eb81a29e9f325a55"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.159066,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0068cd23ad647f18eb81a29e9f325a55","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdeef237e-47d7-42a2-8e9e-9ebb371dcc1a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"baa2d3dc-1831-429f-ab25-c64166567734","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.936134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0ff5653-cf4d-4f8d-8bdb-d6f62b78ab41","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.9419897} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdeef237e-47d7-42a2-8e9e-9ebb371dcc1a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"d249c9c4-0a40-430a-a08b-a8992dad92b3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.956442} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ca51cea-b812-49ed-86e8-39010482d843","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.9567049} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdeef237e-47d7-42a2-8e9e-9ebb371dcc1a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdeef237e-47d7-42a2-8e9e-9ebb371dcc1a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:32.956417615Z"}]},"request_id":"f12f4d3c-5181-41f8-bbbc-05c2d7333a8e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.961349} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0068cd23ad647f18eb81a29e9f325a55"} device-1 | {"level":"info","message":"POST /devices? 201 66ms","method":"POST","requestID":"0068cd23ad647f18eb81a29e9f325a55","responseTime":66,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.072","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0068cd23ad647f18eb81a29e9f325a55"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE","level":"info","message":"auth send jwt","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.988291,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752292,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Mn0.YFS9kh0zL0vYJmcmFG10AyFskbpBmI-q_WJbjRhbnyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28380693-db18-4d47-ba87-a10fe3cf68d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d0ce06e4-b585-46ac-9062-88f43307a503","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.9935834} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b547505-a535-40a3-b5e4-4894fc8fc63f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752292.999384} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28380693-db18-4d47-ba87-a10fe3cf68d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"0d558909-b93f-4d73-8e0c-74cd979d226c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.0111659} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e22a07d-d6ff-4612-b6ca-ed3d53ace375","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.0114253} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28380693-db18-4d47-ba87-a10fe3cf68d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28380693-db18-4d47-ba87-a10fe3cf68d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.011138563Z"}]},"request_id":"23416aa9-3f38-4aa2-b37c-d2c2270242b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.016237} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"91b3bbd02446ae8d6ca8f9b4a66d3686","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"b52c9ffcd488461089ecc817f355340a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b52c9ffcd488461089ecc817f355340a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b52c9ffcd488461089ecc817f355340a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.164359,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b52c9ffcd488461089ecc817f355340a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0dadedd-fd03-47cf-94b9-618fbd9eed18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"047c2535-c7ea-4551-9e85-4aba712249c5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.0497308} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3787f9b-0cc0-455c-895d-d4c79dc62f93","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.0551062} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0dadedd-fd03-47cf-94b9-618fbd9eed18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"e167db40-a09e-45da-b61c-05208953dfc4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.0718868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edb38cf3-5844-4fac-9d47-1e2ab19655a4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.072232} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0dadedd-fd03-47cf-94b9-618fbd9eed18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0dadedd-fd03-47cf-94b9-618fbd9eed18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.071860915Z"}]},"request_id":"821b2210-a38a-48c9-af01-207eabbc4fe6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.076837} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b52c9ffcd488461089ecc817f355340a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +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":"b52c9ffcd488461089ecc817f355340a"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"b52c9ffcd488461089ecc817f355340a","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"9e926208fffe449659decef4f1f357a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e926208fffe449659decef4f1f357a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9e926208fffe449659decef4f1f357a8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.04192,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9e926208fffe449659decef4f1f357a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffb3044f7-b8bc-43ed-aabe-00af1e0c5509","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5b0b3968-2d68-4966-bdc0-0ab30adc681c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1082573} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"453fd490-3829-4f50-858f-72c209cdb907","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1160758} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffb3044f7-b8bc-43ed-aabe-00af1e0c5509","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c4b0f87b-b69f-4743-90b3-5be434936a7b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1276538} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1a723c6-42f7-4b16-82c2-ec4c494b325d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1283672} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffb3044f7-b8bc-43ed-aabe-00af1e0c5509","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffb3044f7-b8bc-43ed-aabe-00af1e0c5509","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.127622403Z"}]},"request_id":"770e5f71-1061-4e8b-85b9-7e9c77e01e26","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.133739} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9e926208fffe449659decef4f1f357a8"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9e926208fffe449659decef4f1f357a8"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"9e926208fffe449659decef4f1f357a8","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"6f235b99b3534c145909f75ee5167f00"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6f235b99b3534c145909f75ee5167f00","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6f235b99b3534c145909f75ee5167f00"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.42649,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6f235b99b3534c145909f75ee5167f00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5415a299-6a06-4265-80cb-fbb882b27246","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1705182} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0e7587e-a36e-4dcc-8b7f-4e732e0d4a3e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1781998} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"26bb2b61-5302-4440-9cf4-aef42fd83e78","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1956391} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94307d06-60bb-4bbf-b440-8301403feb52","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.1961417} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.195609112Z"}]},"request_id":"51cd8559-713b-4fee-b4f9-887ca642de38","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2022722} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6f235b99b3534c145909f75ee5167f00"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f235b99b3534c145909f75ee5167f00"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"6f235b99b3534c145909f75ee5167f00","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"626121f297d8761643b94dceffa906cf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"626121f297d8761643b94dceffa906cf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"626121f297d8761643b94dceffa906cf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.294609,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"626121f297d8761643b94dceffa906cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9937fdc3-44e8-4a2e-bd20-2266ddfd77b3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2414353} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ee59084-83c0-4219-874d-74519cfba0ec","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2490358} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"391771b2-30c2-48c1-9ed7-e842717366e3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2629554} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f12da7ec-00b2-4a48-b7dc-69f688c7a405","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2631347} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.262924483Z"}]},"request_id":"69d8179f-90b2-43f5-b072-1329b7fbe98f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.2702625} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"626121f297d8761643b94dceffa906cf"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"626121f297d8761643b94dceffa906cf"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"626121f297d8761643b94dceffa906cf","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"10c6f84bd4a2b25573433dacc6f055a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"10c6f84bd4a2b25573433dacc6f055a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"10c6f84bd4a2b25573433dacc6f055a8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.240699,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10c6f84bd4a2b25573433dacc6f055a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e083c5f7-ee03-4787-9f46-465bdb647979","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.3060613} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb708147-c1af-40e4-989d-9a5931ee4f71","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.3136525} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"43f42dba-bccf-4c41-80b2-6bd9f143169c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.3305688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"750b809f-9de6-4cd1-a2c9-fa2a9c360cbc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.3311784} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.330535117Z"}]},"request_id":"3ff612ce-b60c-46ea-9f51-89a6f597ef77","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.341494} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"10c6f84bd4a2b25573433dacc6f055a8"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10c6f84bd4a2b25573433dacc6f055a8"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"10c6f84bd4a2b25573433dacc6f055a8","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"2efa6b6f368fad702e8aedb703aa31db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2efa6b6f368fad702e8aedb703aa31db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2efa6b6f368fad702e8aedb703aa31db"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.109261,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2efa6b6f368fad702e8aedb703aa31db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2efa6b6f368fad702e8aedb703aa31db","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.195609112Z"}]},"request_id":"a3b752d6-31f5-46cf-a99c-01417b188e9a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.379386} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2efa6b6f368fad702e8aedb703aa31db","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67dc85dc-f673-4dd1-a631-c9fb48cebbda","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.3872647} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2efa6b6f368fad702e8aedb703aa31db","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.195609112Z"}]},"request_id":"db07adde-1b43-408e-991b-f7db4403bb6a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.399735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2efa6b6f368fad702e8aedb703aa31db","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2efa6b6f368fad702e8aedb703aa31db"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/faea2874-69e8-4842-aa22-1a74de3dec5c? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2efa6b6f368fad702e8aedb703aa31db"} device-1 | {"level":"info","message":"PATCH /devices/faea2874-69e8-4842-aa22-1a74de3dec5c? 200 44ms","method":"PATCH","requestID":"2efa6b6f368fad702e8aedb703aa31db","responseTime":44,"status":200,"url":"/devices/faea2874-69e8-4842-aa22-1a74de3dec5c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307575,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.262924483Z"}]},"request_id":"b9c70b04-ea0d-49f2-9430-d256bf7a91b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.42773} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a71a4095-9419-4f2f-90d4-da164a83d82d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.435518} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.262924483Z"}]},"request_id":"345b65b9-feb3-4095-838c-d11d3b64fa8a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.4468288} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a? 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":"bb196fb06bfb4e74bb5acbdb721c35ab"} device-1 | {"level":"info","message":"PATCH /devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a? 200 38ms","method":"PATCH","requestID":"bb196fb06bfb4e74bb5acbdb721c35ab","responseTime":38,"status":200,"url":"/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"798291ec94f2d79c6f0be56d9d121924"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"798291ec94f2d79c6f0be56d9d121924","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"798291ec94f2d79c6f0be56d9d121924"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.17787,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"798291ec94f2d79c6f0be56d9d121924","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"798291ec94f2d79c6f0be56d9d121924","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.330535117Z"}]},"request_id":"44188052-11c1-48aa-8521-198ad3f3b8a6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.4763105} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"798291ec94f2d79c6f0be56d9d121924","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e285de94-f10b-4cc3-9e46-28f107283c90","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.484015} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"798291ec94f2d79c6f0be56d9d121924","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.330535117Z"}]},"request_id":"81d49af1-e88c-4ac4-be62-a88e113b4437","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.493438} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"798291ec94f2d79c6f0be56d9d121924","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"798291ec94f2d79c6f0be56d9d121924"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"798291ec94f2d79c6f0be56d9d121924"} device-1 | {"level":"info","message":"PATCH /devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac? 200 37ms","method":"PATCH","requestID":"798291ec94f2d79c6f0be56d9d121924","responseTime":37,"status":200,"url":"/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"0f2238c397ef48c3ba0891bd926f8404"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f2238c397ef48c3ba0891bd926f8404"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288958,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2238c397ef48c3ba0891bd926f8404","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffaea2874-69e8-4842-aa22-1a74de3dec5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.195609112Z"}]},"request_id":"01df0cbf-d3d5-49d2-8253-438da0296f28","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.5179665} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.671104,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.401405,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7197a79c-26e3-41eb-908a-9cc9a8d02e1c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2238c397ef48c3ba0891bd926f8404","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7197a79c-26e3-41eb-908a-9cc9a8d02e1c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e729e7b-f176-4b9f-a029-4ee9287074ff","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2238c397ef48c3ba0891bd926f8404","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5e729e7b-f176-4b9f-a029-4ee9287074ff","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.676764,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb2c2af6-d739-4bb3-b430-001391ef679d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2238c397ef48c3ba0891bd926f8404","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/bb2c2af6-d739-4bb3-b430-001391ef679d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.254791,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2238c397ef48c3ba0891bd926f8404","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f2238c397ef48c3ba0891bd926f8404"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/faea2874-69e8-4842-aa22-1a74de3dec5c? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f2238c397ef48c3ba0891bd926f8404"} device-1 | {"level":"info","message":"GET /devices/faea2874-69e8-4842-aa22-1a74de3dec5c? 200 45ms","method":"GET","requestID":"0f2238c397ef48c3ba0891bd926f8404","responseTime":45,"status":200,"url":"/devices/faea2874-69e8-4842-aa22-1a74de3dec5c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.501717,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd1b3afd6-56e3-4266-a174-45b4cf2db56a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.262924483Z"}]},"request_id":"458a5b09-d7dc-4b5f-80d5-d0c7f08c9fa7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.5724602} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.718145,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208417,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.15426,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.981827,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1f2a96b6-97a6-4d09-b31a-8c9b08a259f4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9c7ace76-8e76-44fb-bceb-83ba30d0c852","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/9c7ace76-8e76-44fb-bceb-83ba30d0c852","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c7ae1e47-b8a3-4dda-951a-19b25ef3c0d6","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/deef237e-47d7-42a2-8e9e-9ebb371dcc1a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/deef237e-47d7-42a2-8e9e-9ebb371dcc1a","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205469,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48026","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48026","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.581905,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a? 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":"c7d9c3284b57d19cc4c432d9fa2ba28c"} device-1 | {"level":"info","message":"GET /devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a? 200 56ms","method":"GET","requestID":"c7d9c3284b57d19cc4c432d9fa2ba28c","responseTime":56,"status":200,"url":"/devices/d1b3afd6-56e3-4266-a174-45b4cf2db56a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"d3e20b5af84c00be06423808757188d6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3e20b5af84c00be06423808757188d6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288647,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d3e20b5af84c00be06423808757188d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f6c2143-ef86-4c79-b0d2-58e3c0e570ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.330535117Z"}]},"request_id":"2806d964-93f0-4fbc-9c33-a4efa8b646ff","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.6364372} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159629,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897398,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99274,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28380693-db18-4d47-ba87-a10fe3cf68d8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d3e20b5af84c00be06423808757188d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/28380693-db18-4d47-ba87-a10fe3cf68d8","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0dadedd-fd03-47cf-94b9-618fbd9eed18","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d3e20b5af84c00be06423808757188d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a0dadedd-fd03-47cf-94b9-618fbd9eed18","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fb3044f7-b8bc-43ed-aabe-00af1e0c5509","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d3e20b5af84c00be06423808757188d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fb3044f7-b8bc-43ed-aabe-00af1e0c5509","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:48014","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312085,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d3e20b5af84c00be06423808757188d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/faea2874-69e8-4842-aa22-1a74de3dec5c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3e20b5af84c00be06423808757188d6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3e20b5af84c00be06423808757188d6"} device-1 | {"level":"info","message":"GET /devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac? 200 38ms","method":"GET","requestID":"d3e20b5af84c00be06423808757188d6","responseTime":38,"status":200,"url":"/devices/7f6c2143-ef86-4c79-b0d2-58e3c0e570ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"17700f1677420f99fc1fd9164c0b934e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"17700f1677420f99fc1fd9164c0b934e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"17700f1677420f99fc1fd9164c0b934e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.051245,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17700f1677420f99fc1fd9164c0b934e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ca895f23-439e-4c42-9521-0db82eeefa9f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.6972754} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abacc6f1-fad9-4822-b5c7-9c0fc3d16b35","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7060106} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b347db20-96e7-406f-987c-0aaea12274ee","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7192113} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5df72a54-ce94-4a04-8ad7-4e20830e639a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7197154} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.719163727Z"}]},"request_id":"7f08c193-6d34-4e93-bc22-dfc7f4259b61","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.727006} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"17700f1677420f99fc1fd9164c0b934e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +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":"17700f1677420f99fc1fd9164c0b934e"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"17700f1677420f99fc1fd9164c0b934e","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"ffb4265640386106957670e52d3d97c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ffb4265640386106957670e52d3d97c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ffb4265640386106957670e52d3d97c6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.955569,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ffb4265640386106957670e52d3d97c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b25bcc7-d821-403f-a357-f34c13f9a24b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7650225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e5d78ea-cc0d-4a12-a287-69b219c313ad","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7733343} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"44ddeae6-0564-43ce-966e-980274d147d7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7873983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9c5e7e5-e701-44f2-aade-ca1e3ffe611e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7878802} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.787374471Z"}]},"request_id":"b6216c29-9e08-4699-96db-be229d9fc45a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.7951775} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ffb4265640386106957670e52d3d97c6"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ffb4265640386106957670e52d3d97c6"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"ffb4265640386106957670e52d3d97c6","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho","level":"info","message":"auth send jwt","requestID":"3a835dcc0ebf695546b83b37bec4061b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3a835dcc0ebf695546b83b37bec4061b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3a835dcc0ebf695546b83b37bec4061b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.494585,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3a835dcc0ebf695546b83b37bec4061b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752293,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5M30.bdun8MH_BFB9u0-OwyldUsk3A7aZWwcpemhDkCHZwho"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ed207e52-267d-4019-9ab3-b4461a993aaa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.8376992} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fab9bc35-3e1c-4af7-88e0-0d3c8ddb8287","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.8468738} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"07506d07-3244-4595-9dae-78e3a31fdfa1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.8596725} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bafc7feb-92ce-4ac6-9c74-ae24a5b14652","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.8599076} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.859652355Z"}]},"request_id":"7ec541b1-449b-4178-9df1-0a49d38e3da8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752293.8668308} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3a835dcc0ebf695546b83b37bec4061b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a835dcc0ebf695546b83b37bec4061b"} device-1 | {"level":"info","message":"POST /devices? 201 63ms","method":"POST","requestID":"3a835dcc0ebf695546b83b37bec4061b","responseTime":63,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"15360bb1832945cf83cbed8fd40cf4e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"15360bb1832945cf83cbed8fd40cf4e9","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/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":"15360bb1832945cf83cbed8fd40cf4e9"} device-1 | {"level":"info","message":"OPTIONS /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/websocket 200 1ms","method":"OPTIONS","requestID":"15360bb1832945cf83cbed8fd40cf4e9","responseTime":1,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I","level":"info","message":"auth send jwt","requestID":"30953567922f4838f2761f941db5b87b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"30953567922f4838f2761f941db5b87b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"30953567922f4838f2761f941db5b87b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706967,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"30953567922f4838f2761f941db5b87b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30953567922f4838f2761f941db5b87b","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9252ac1b784543f72f2488410f07514","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e9252ac1b784543f72f2488410f07514","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/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":"e9252ac1b784543f72f2488410f07514"} device-1 | {"level":"info","message":"OPTIONS /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/websocket 200 1ms","method":"OPTIONS","requestID":"e9252ac1b784543f72f2488410f07514","responseTime":1,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I","level":"info","message":"auth send jwt","requestID":"8cc28532795c46ec9e212f9811fb5644"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8cc28532795c46ec9e212f9811fb5644","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8cc28532795c46ec9e212f9811fb5644"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"30953567922f4838f2761f941db5b87b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305929,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} gateway-1 | {"time_local":"23/Jul/2024:16:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/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":"30953567922f4838f2761f941db5b87b"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/websocket 200 32ms","method":"POST","requestID":"30953567922f4838f2761f941db5b87b","responseTime":32,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8cc28532795c46ec9e212f9811fb5644","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8cc28532795c46ec9e212f9811fb5644","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8cc28532795c46ec9e212f9811fb5644"} gateway-1 | {"time_local":"23/Jul/2024:16:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/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":"8cc28532795c46ec9e212f9811fb5644"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/websocket 200 21ms","method":"POST","requestID":"8cc28532795c46ec9e212f9811fb5644","responseTime":21,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I","level":"info","message":"auth send jwt","requestID":"9a48ca180893b020f820a474afb8b1a1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a48ca180893b020f820a474afb8b1a1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a48ca180893b020f820a474afb8b1a1"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717739,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9a48ca180893b020f820a474afb8b1a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a48ca180893b020f820a474afb8b1a1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.859652355Z"}]},"request_id":"630adb26-4cf3-4661-ac56-5769c95bd3ed","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752295.8909442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a48ca180893b020f820a474afb8b1a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a48ca180893b020f820a474afb8b1a1"} gateway-1 | {"time_local":"23/Jul/2024:16:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a48ca180893b020f820a474afb8b1a1"} device-1 | {"level":"info","message":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? 200 16ms","method":"GET","requestID":"9a48ca180893b020f820a474afb8b1a1","responseTime":16,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I","level":"info","message":"auth send jwt","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.096524,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e0c6f2a1c5214a1db42e0634cb9f6837","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to run experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to book experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully booked experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"076b02e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.197072,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9a3233-cc6c-42be-af9c-a274b96b1e5f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ce9a3233-cc6c-42be-af9c-a274b96b1e5f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286471,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"076b02e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"076b02e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9a3233-cc6c-42be-af9c-a274b96b1e5f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.787374471Z"}]},"request_id":"fd710241-4ce0-43af-baf2-ca153b1677c8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752295.9619875} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.859652355Z"}]},"request_id":"c508a8b3-18b0-4d73-a1a7-fe178cfc1d0e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752295.963233} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"076b02e0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"076b02e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? 200 22ms","method":"GET","requestID":"076b02e0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678089,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/ce9a3233-cc6c-42be-af9c-a274b96b1e5f? 200 30ms","method":"GET","requestID":"076ab4c0-4911-11ef-863d-25b977f1d961","responseTime":30,"status":200,"url":"/devices/ce9a3233-cc6c-42be-af9c-a274b96b1e5f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Setting up experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully set up experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0777fb30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07784950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0778be80-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully running experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.348474,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0777fb30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0777fb30-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.295575,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07784950-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"07784950-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"223c2a20-d217-4789-b60b-71710dd6061b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.052488} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.719163727Z"}]},"request_id":"1b928b3b-d737-43fc-8ce1-42c4460765f8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.055629} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.801471,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0778be80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","rebac_allow":false,"scope_allow":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":"0778be80-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"0777fb30-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.859652355Z"}]},"request_id":"9e0bcd5f-d087-4259-8373-4caadb23828d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.0607355} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"07784950-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0778be80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling 200 25ms","method":"POST","requestID":"0778be80-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"077d2b50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"395fc34d-6455-41bb-b1e9-b1c0a8e55fc6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.0729873} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faaee4ac9-0d28-49e3-9134-588211beba06#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faaee4ac9-0d28-49e3-9134-588211beba06","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"09c81caa-00e1-4347-b301-cfc3304a20df","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.074368} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c09a310f-880a-4254-b40e-fefafacd79af","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.0757928} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.02396,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"077d2b50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0777fb30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"077d2b50-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0? 200 44ms","method":"GET","requestID":"0777fb30-4911-11ef-863d-25b977f1d961","responseTime":44,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07784950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? 200 45ms","method":"GET","requestID":"07784950-4911-11ef-863d-25b977f1d961","responseTime":45,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"077d2b50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling 200 14ms","method":"POST","requestID":"077d2b50-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"077fea70-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"level":"info","message":"POST /experiments? 201 181ms","method":"POST","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837","responseTime":181,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13cddfe0-39d4-483f-b85b-51c49f8fdf40","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.0926588} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.05002,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"077fea70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","rebac_allow":false,"scope_allow":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":"077fea70-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"077fea70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling 200 12ms","method":"POST","requestID":"077fea70-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840698,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07823460-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.719163727Z"}]},"request_id":"48c7d228-ce06-4181-8839-d3fb57297126","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.1058807} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"428e9121-8ba6-480e-92eb-13798558ad07","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.106036} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.098367,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07823460-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","rebac_allow":false,"scope_allow":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":"07823460-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2"} device-1 | {"level":"info","message":"GET /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0? 200 15ms","method":"GET","requestID":"7ec4c6e942bb54e7b7ab5910d6fc97c2","responseTime":15,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07823460-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling 200 10ms","method":"POST","requestID":"07823460-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Building connection plan","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a3156d53-31ce-4f7d-9bfb-db73ceda95d8"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9af0f0b3-d9d8-432d-b314-7e655950b3ad"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"acc32aff-f9c1-4834-942f-400f81f71926"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"df1082c47a01d51796ae4afc505f579b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"df1082c47a01d51796ae4afc505f579b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"df1082c47a01d51796ae4afc505f579b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.619137,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07843030-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752295,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5NX0.6MRGE8huDMtePP62wQL_rNx2JI6E9a_jQnRY9DMfl7I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07843030-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.600288,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"df1082c47a01d51796ae4afc505f579b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"df1082c47a01d51796ae4afc505f579b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:33.859652355Z"}]},"request_id":"cc075842-5a1e-4662-994b-3d8399d68a74","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.1241968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"df1082c47a01d51796ae4afc505f579b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"df1082c47a01d51796ae4afc505f579b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df1082c47a01d51796ae4afc505f579b"} device-1 | {"level":"info","message":"GET /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f? 200 11ms","method":"GET","requestID":"df1082c47a01d51796ae4afc505f579b","responseTime":11,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"539bdd1e-48db-436f-a89e-26a3b58367d1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.128209} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4150107-3fff-4219-99bc-553c5fe0ca93","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.1284328} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"07843030-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71'","requestID":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71'","requestID":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"07843030-4911-11ef-863d-25b977f1d961"} 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":"07843030-4911-11ef-863d-25b977f1d961","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":"07843030-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e0c6f2a1c5214a1db42e0634cb9f6837"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"078c6d90-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa93d092-861d-4bf6-9c9e-d8fd5710a22c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.1739337} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.141005,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"078c6d90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","rebac_allow":false,"scope_allow":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":"078c6d90-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"078c6d90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling 200 9ms","method":"POST","requestID":"078c6d90-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"078e1b40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f78e372f-3469-4b05-b006-bc9383f6be74","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.1842105} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188634,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"078e1b40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","rebac_allow":false,"scope_allow":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":"078e1b40-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"078e1b40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling 200 9ms","method":"POST","requestID":"078e1b40-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling"} device-1 | {"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7972408466001902831 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:3trj\r\na=ice-pwd:xOcRzata2MUrBo0cWqxb1vD4\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2E:90:8E:CE:3A:79:C2:5C:E8:28:2C:46:CF:55:C0:83:4E:13:A9:2E:74:CE:0B:39:5D:B9:2D:59:3D:3E:B4:53\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4384991966513027736 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:X3rE\r\na=ice-pwd:EjZQkRFzl/tguVO0fU6fWU8q\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F1:2B:0F:AE:54:BF:C1:5C:C3:9A:77:77:A4:AB:49:AE:E2:B4:AB:99:57:EB:F6:22:1A:A4:4E:CC:D4:4D:EC:8A\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2294347981 1 udp 2113937151 5c6b976a-0cf7-49bd-a4c5-0a87de98c796.local 40658 typ host generation 0 ufrag X3rE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:468408798 1 udp 1677729535 141.24.211.56 40658 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag X3rE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:676688660 1 udp 2113937151 e4f76381-0f97-451d-867c-b660f92fad8b.local 38981 typ host generation 0 ufrag 3trj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2893551979 1 udp 1677729535 141.24.211.56 38981 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 3trj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","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/37497c34-d0bd-44c7-ac92-4ee8553ca75f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0'"} device-1 | {"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"951994d7a8d95fdaf10d700f91a272e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"951994d7a8d95fdaf10d700f91a272e8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"}}},"level":"info","message":"received a callback","requestID":"951994d7a8d95fdaf10d700f91a272e8"} device-1 | {"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","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":"951994d7a8d95fdaf10d700f91a272e8","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"951994d7a8d95fdaf10d700f91a272e8"} device-1 | {"device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","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/a24db540-0d89-4a74-8296-6aa520043b71' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26b946220ad6dff58d998384ce031805","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"26b946220ad6dff58d998384ce031805","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"}}},"level":"info","message":"received a callback","requestID":"26b946220ad6dff58d998384ce031805"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"079ac570-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa24db540-0d89-4a74-8296-6aa520043b71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ada9c016-c370-4cf7-a279-ed2d472b6eca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.2672613} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.116981,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"079ac570-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","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":"079ac570-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"079ac570-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/a24db540-0d89-4a74-8296-6aa520043b71 200 7ms","method":"GET","requestID":"079ac570-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"26b946220ad6dff58d998384ce031805","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"26b946220ad6dff58d998384ce031805"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"079ee420-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90604c75-ceed-483e-a91a-2f962456819b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.2950299} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.10555,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"079ee420-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","rebac_allow":false,"scope_allow":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":"079ee420-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"079ee420-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling 200 9ms","method":"POST","requestID":"079ee420-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07a091d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd9c1cea-1767-4ae6-854e-6c214b71a34a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.3064144} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.774584,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07a091d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","rebac_allow":false,"scope_allow":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":"07a091d0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07a091d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling 200 9ms","method":"POST","requestID":"07a091d0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"1a5a4beb5ba37795b551f6e358c047ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a5a4beb5ba37795b551f6e358c047ed","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/aaee4ac9-0d28-49e3-9134-588211beba06","requestID":"1a5a4beb5ba37795b551f6e358c047ed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.640089,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a5a4beb5ba37795b551f6e358c047ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a5a4beb5ba37795b551f6e358c047ed","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/aaee4ac9-0d28-49e3-9134-588211beba06","requestID":"1a5a4beb5ba37795b551f6e358c047ed"} experiment-1 | {"level":"info","message":"GET /experiments/aaee4ac9-0d28-49e3-9134-588211beba06 200 10ms","method":"GET","requestID":"1a5a4beb5ba37795b551f6e358c047ed","responseTime":10,"status":200,"url":"/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/aaee4ac9-0d28-49e3-9134-588211beba06 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a5a4beb5ba37795b551f6e358c047ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/aaee4ac9-0d28-49e3-9134-588211beba06","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.786099,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Attempting to finish experiment","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"07aa07b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.729202,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07aa07b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07aa07b0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","device":"37497c34-d0bd-44c7-ac92-4ee8553ca75f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71","device":"be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","deviceName":"Internal Test Device","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/a24db540-0d89-4a74-8296-6aa520043b71' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58a14aca368312c0fbb5c285d983ef8b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa24db540-0d89-4a74-8296-6aa520043b71': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa24db540-0d89-4a74-8296-6aa520043b71","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"eff8f641-d8fa-491d-8a71-1cd58844fc38","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.3879104} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"58a14aca368312c0fbb5c285d983ef8b","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf4d86c7-9431-4892-b40c-c59ab03a74bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.3881803} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db632292adfe8e10f508cad5593a6acf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"db632292adfe8e10f508cad5593a6acf","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"07aa07b0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"}}},"level":"info","message":"received a callback","requestID":"58a14aca368312c0fbb5c285d983ef8b"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"}}},"level":"info","message":"received a callback","requestID":"db632292adfe8e10f508cad5593a6acf"} device-1 | {"data":{"peerconnection":"a24db540-0d89-4a74-8296-6aa520043b71","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"07aa07b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/a24db540-0d89-4a74-8296-6aa520043b71 204 44ms","method":"DELETE","requestID":"07aa07b0-4911-11ef-863d-25b977f1d961","responseTime":44,"status":204,"url":"/peerconnections/a24db540-0d89-4a74-8296-6aa520043b71"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"},"level":"info","message":"Successfully finished experiment","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07b4b610-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37497c34-d0bd-44c7-ac92-4ee8553ca75f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1477d02c-82eb-4a89-adab-a57b807c1712","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.4387305} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.130276,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07b4b610-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f","object_type":"device","rebac_allow":false,"scope_allow":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":"07b4b610-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07b4b610-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling 200 11ms","method":"POST","requestID":"07b4b610-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07b6b1e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faaee4ac9-0d28-49e3-9134-588211beba06': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faaee4ac9-0d28-49e3-9134-588211beba06","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"1bdd4ada-c257-46ed-bbd0-6e6734122014","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.4494019} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"219514fa-41ff-49c4-8b69-78d9cdf75116","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.4497292} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9617804f-27d7-4e51-a79e-0c02a4494ded","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.4520576} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.259112,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"07b6b1e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0","object_type":"device","rebac_allow":false,"scope_allow":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":"07b6b1e0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07b6b1e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling 200 9ms","method":"POST","requestID":"07b6b1e0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/aaee4ac9-0d28-49e3-9134-588211beba06","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/aaee4ac9-0d28-49e3-9134-588211beba06 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":"5ad1322ec3515a0e2f5bb5f7392ade8c"} experiment-1 | {"level":"info","message":"DELETE /experiments/aaee4ac9-0d28-49e3-9134-588211beba06 204 161ms","method":"DELETE","requestID":"5ad1322ec3515a0e2f5bb5f7392ade8c","responseTime":161,"status":204,"url":"/experiments/aaee4ac9-0d28-49e3-9134-588211beba06"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"58a14aca368312c0fbb5c285d983ef8b","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"58a14aca368312c0fbb5c285d983ef8b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"db632292adfe8e10f508cad5593a6acf","responseTime":123,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"b72d46c66e9886489ac7550cf316ee7e"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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":"db632292adfe8e10f508cad5593a6acf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b72d46c66e9886489ac7550cf316ee7e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b72d46c66e9886489ac7550cf316ee7e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.735147,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.686","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5912574ad00a2ca256263793e449edd7"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b72d46c66e9886489ac7550cf316ee7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.672","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e5e8050ad0f99b1658918e1c9ab0d735"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/37497c34-d0bd-44c7-ac92-4ee8553ca75f' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/be2b58d8-f6ff-4e82-bea7-ddfae3a7ace0' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"808b3bed-e89e-4a54-adc5-45bc655f71f6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5431323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17780b16-f477-4b2e-8d9b-9427f1af5f7a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5477014} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"7bfada4f-846c-4eae-9338-6a67cbd84673","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5576532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a27c07c8-9159-45a3-a56b-b83e506743fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5577085} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"73b61154-5cb0-4847-a410-080b5ec50247","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5626137} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b72d46c66e9886489ac7550cf316ee7e"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b72d46c66e9886489ac7550cf316ee7e"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b72d46c66e9886489ac7550cf316ee7e","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M","level":"info","message":"auth send jwt","requestID":"fff6e6b02258e48255afca5b3586c3ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fff6e6b02258e48255afca5b3586c3ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fff6e6b02258e48255afca5b3586c3ed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.874478,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fff6e6b02258e48255afca5b3586c3ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752296,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5Nn0.2A6rwPtXeNKTT_-M9J1nL4nEEd3qtzFWlXfns5cI04M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"acfef7e3-cf72-4b02-ac38-70e5632a3f22","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.589524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c398a6a-1fe3-4f8e-b3f8-ddbc30fbe3ff","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.5950203} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"4f5d0441-1a1d-4d40-91f5-f1dad2112c84","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.602755} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24fcaa2d-891e-4402-a20a-ca0b4d2dd1c8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.603022} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.602734554Z"}]},"request_id":"28790a82-0e76-4ea0-97a5-99a9e93c2a03","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752296.6070597} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fff6e6b02258e48255afca5b3586c3ed"} gateway-1 | {"time_local":"23/Jul/2024:16:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fff6e6b02258e48255afca5b3586c3ed"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"fff6e6b02258e48255afca5b3586c3ed","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5N30.eB89Vv26y-0DNqxOaiXeIS0JrlEPSxPqdUQBuyTYui4","level":"info","message":"auth send jwt","requestID":"4db42bf5417ac750fdd8250eedb98ca2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4db42bf5417ac750fdd8250eedb98ca2","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4db42bf5417ac750fdd8250eedb98ca2"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956673,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4db42bf5417ac750fdd8250eedb98ca2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752297,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5N30.eB89Vv26y-0DNqxOaiXeIS0JrlEPSxPqdUQBuyTYui4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4db42bf5417ac750fdd8250eedb98ca2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"270c4e33-f6c0-4657-bfc6-e2d27e328452","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752297.114939} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4db42bf5417ac750fdd8250eedb98ca2","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99fce489-5ee5-44d6-b7a3-9afb64b51668","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752297.1218936} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4db42bf5417ac750fdd8250eedb98ca2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"df50c95b-2b1f-40d0-abb3-62832ecf072a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752297.1346996} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4db42bf5417ac750fdd8250eedb98ca2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4db42bf5417ac750fdd8250eedb98ca2"} device-1 | {"level":"info","message":"PATCH /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038 200 36ms","method":"PATCH","requestID":"4db42bf5417ac750fdd8250eedb98ca2","responseTime":36,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"} gateway-1 | {"time_local":"23/Jul/2024:16:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4db42bf5417ac750fdd8250eedb98ca2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5N30.eB89Vv26y-0DNqxOaiXeIS0JrlEPSxPqdUQBuyTYui4","level":"info","message":"auth send jwt","requestID":"2c26a2d29593612585501e59e6799698"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c26a2d29593612585501e59e6799698","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c26a2d29593612585501e59e6799698"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206089,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2c26a2d29593612585501e59e6799698","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752297,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5N30.eB89Vv26y-0DNqxOaiXeIS0JrlEPSxPqdUQBuyTYui4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c26a2d29593612585501e59e6799698","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c26a2d29593612585501e59e6799698"} gateway-1 | {"time_local":"23/Jul/2024:16:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2c26a2d29593612585501e59e6799698"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/websocket 200 22ms","method":"POST","requestID":"2c26a2d29593612585501e59e6799698","responseTime":22,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d184632b053e250c86f37618ed99edd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2d184632b053e250c86f37618ed99edd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a407367d-85e5-49ac-bb02-fb4330dab130/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":"2d184632b053e250c86f37618ed99edd"} device-1 | {"level":"info","message":"OPTIONS /devices/a407367d-85e5-49ac-bb02-fb4330dab130/websocket 200 2ms","method":"OPTIONS","requestID":"2d184632b053e250c86f37618ed99edd","responseTime":2,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"37648544e4da80d205fb141398452a48"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"37648544e4da80d205fb141398452a48","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"37648544e4da80d205fb141398452a48"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169319,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37648544e4da80d205fb141398452a48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"37648544e4da80d205fb141398452a48","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"37648544e4da80d205fb141398452a48"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/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":"37648544e4da80d205fb141398452a48"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/websocket 200 23ms","method":"POST","requestID":"37648544e4da80d205fb141398452a48","responseTime":23,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"40b5cc4fd18c366ccefeed954c436cf4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40b5cc4fd18c366ccefeed954c436cf4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40b5cc4fd18c366ccefeed954c436cf4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.581495,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"40b5cc4fd18c366ccefeed954c436cf4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"40b5cc4fd18c366ccefeed954c436cf4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"6623bb4e-3537-4c7d-b09f-0ffdd7c929e6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.6566138} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40b5cc4fd18c366ccefeed954c436cf4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40b5cc4fd18c366ccefeed954c436cf4"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40b5cc4fd18c366ccefeed954c436cf4"} device-1 | {"level":"info","message":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? 200 21ms","method":"GET","requestID":"40b5cc4fd18c366ccefeed954c436cf4","responseTime":21,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"192fb2f23b8b693b5fe2958652624426"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"192fb2f23b8b693b5fe2958652624426","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"192fb2f23b8b693b5fe2958652624426"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231734,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"192fb2f23b8b693b5fe2958652624426","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"192fb2f23b8b693b5fe2958652624426","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.602734554Z"}]},"request_id":"6749659b-97f0-4a43-b7ee-6334d3d7c337","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.683484} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"192fb2f23b8b693b5fe2958652624426","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"192fb2f23b8b693b5fe2958652624426"} device-1 | {"level":"info","message":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? 200 19ms","method":"GET","requestID":"192fb2f23b8b693b5fe2958652624426","responseTime":19,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"192fb2f23b8b693b5fe2958652624426"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"44268566a516fcc31e4a48fc8b29d741"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"44268566a516fcc31e4a48fc8b29d741","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"44268566a516fcc31e4a48fc8b29d741"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.368058,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"44268566a516fcc31e4a48fc8b29d741","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44268566a516fcc31e4a48fc8b29d741","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to run experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to book experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully booked experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09175350-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0917a170-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064255,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"09175350-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"09175350-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.095516,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0917a170-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0917a170-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"202c1690-a23a-4727-9c92-30e2ccecf934","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.7686682} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"09175350-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.602734554Z"}]},"request_id":"0e698bb8-b79f-4617-b24e-9b98c0aebc73","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.770136} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0917a170-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09175350-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? 200 19ms","method":"GET","requestID":"09175350-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0917a170-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? 200 18ms","method":"GET","requestID":"0917a170-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Setting up experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully set up experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09233a30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0923af60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0923d670-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully running experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144802,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"09233a30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"09233a30-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.039055,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0923af60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0923af60-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48012","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.369757,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44ec427d-4809-45d0-8704-a5224290d9b2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8472703} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0923d670-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","rebac_allow":false,"scope_allow":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":"0923d670-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0923d670-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling 200 16ms","method":"POST","requestID":"0923d670-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"a421b34e-581c-479f-ae21-d87a01ce6701","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8543296} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0926e3b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"09233a30-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.602734554Z"}]},"request_id":"e0240c83-0170-4871-ba2e-a620c4c2c0ba","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8591895} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0923af60-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"112defb2-b496-4c06-be6e-1847ff9bd0a8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8671584} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"de5a7c06-bef9-4b5d-a3d5-0ac95403ae6a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8676033} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09233a30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61abf036-d0e7-44e0-a37f-65b7515f9fe3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.8681197} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.547217,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} device-1 | {"level":"info","message":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? 200 34ms","method":"GET","requestID":"09233a30-4911-11ef-863d-25b977f1d961","responseTime":34,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0926e3b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","rebac_allow":false,"scope_allow":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":"0926e3b0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"44268566a516fcc31e4a48fc8b29d741","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0923af60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? 200 35ms","method":"GET","requestID":"0923af60-4911-11ef-863d-25b977f1d961","responseTime":35,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0926e3b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling 200 16ms","method":"POST","requestID":"0926e3b0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0929c9e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"44268566a516fcc31e4a48fc8b29d741"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"level":"info","message":"POST /experiments? 201 182ms","method":"POST","requestID":"44268566a516fcc31e4a48fc8b29d741","responseTime":182,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5685352-01e9-4b92-9762-6fd8c18c0676","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.883377} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.932741,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0929c9e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","rebac_allow":false,"scope_allow":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":"0929c9e0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"ea48b1379d2ff2bab84aa53857c9a342"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0929c9e0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ea48b1379d2ff2bab84aa53857c9a342","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling 200 12ms","method":"POST","requestID":"0929c9e0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea48b1379d2ff2bab84aa53857c9a342"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"092c13d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.515165,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ea48b1379d2ff2bab84aa53857c9a342","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea48b1379d2ff2bab84aa53857c9a342","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61972875-6606-450f-9fc2-968b6fb7e771","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9005497} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.488974,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"092c13d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","rebac_allow":false,"scope_allow":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":"092c13d0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.557622968Z"}]},"request_id":"30972062-0e74-4282-ba4f-e8d95b4282e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9024591} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ea48b1379d2ff2bab84aa53857c9a342","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"092c13d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling 200 15ms","method":"POST","requestID":"092c13d0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea48b1379d2ff2bab84aa53857c9a342"} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea48b1379d2ff2bab84aa53857c9a342"} device-1 | {"level":"info","message":"GET /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038? 200 18ms","method":"GET","requestID":"ea48b1379d2ff2bab84aa53857c9a342","responseTime":18,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Building connection plan","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"b69b746c-bac7-40f7-a706-651ca3418504"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"7960dfbf-a890-4cab-85fc-1e6d2b4bcdad"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"dfe7c0cf-a865-40f0-80ce-67b651e9c8b1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"44268566a516fcc31e4a48fc8b29d741"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"44268566a516fcc31e4a48fc8b29d741"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc","level":"info","message":"auth send jwt","requestID":"cdae300e06e3673c92098637e20cb582"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cdae300e06e3673c92098637e20cb582","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cdae300e06e3673c92098637e20cb582"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.111465,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"092efa00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"092efa00-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"client_addr":"127.0.0.1:37792","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959237,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cdae300e06e3673c92098637e20cb582","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752298,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjI5OH0.AFLd5_mFZrcP7GXvxxKWeuVQkrWxQmHTtk53bLHCZIc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cdae300e06e3673c92098637e20cb582","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:36.602734554Z"}]},"request_id":"45f3cd98-9f8f-4e63-a426-aeacf1d044b8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9271228} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cdae300e06e3673c92098637e20cb582","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cdae300e06e3673c92098637e20cb582"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"53ea1e98-b10a-4321-9884-4fe14c428be2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9319081} gateway-1 | {"time_local":"23/Jul/2024:16:31:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cdae300e06e3673c92098637e20cb582"} device-1 | {"level":"info","message":"GET /devices/a407367d-85e5-49ac-bb02-fb4330dab130? 200 16ms","method":"GET","requestID":"cdae300e06e3673c92098637e20cb582","responseTime":16,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4dbb502-b325-4dbd-8c0d-a9b27cd3b90c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9322705} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"092efa00-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8'","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8'","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"092efa00-4911-11ef-863d-25b977f1d961","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"092efa00-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"44268566a516fcc31e4a48fc8b29d741"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"093a92c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:38Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b8e9462-6e72-47cc-84b0-b08cdcdd73ef","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752298.9929378} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82622,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:38Z"} device-1 | {"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"093a92c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","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 | {"content":{"canTrickle":true},"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"093a92c0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 262532376471485604 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:9l1v\r\na=ice-pwd:b6bCNP8AiDd1p02SWC9gXBAX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 37:5D:CE:1B:DB:3E:BB:B6:A4:57:E1:0B:1C:AB:B2:75:EF:82:3A:4F:50:87:53:04:97:6D:14:E2:FD:33:CE: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":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"093a92c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling 200 12ms","method":"POST","requestID":"093a92c0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130'"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"093cb5a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"569e182c-9521-4ac1-9cc3-8a6338e46d3c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752299.0071855} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.55203,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"093cb5a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","rebac_allow":false,"scope_allow":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":"093cb5a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"093cb5a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling 200 9ms","method":"POST","requestID":"093cb5a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling"} device-1 | {"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/28473f7e-fb16-4b3f-b0cc-4581386d92e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"515c07d003912abc1e9cc756d1e1b693","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"515c07d003912abc1e9cc756d1e1b693","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"}}},"level":"info","message":"received a callback","requestID":"515c07d003912abc1e9cc756d1e1b693"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"515c07d003912abc1e9cc756d1e1b693","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"515c07d003912abc1e9cc756d1e1b693"} device-1 | {"content":{"candidate":"candidate:865486786 1 udp 2113937151 a9b3410a-6398-44d7-9a15-cbe69efcdb99.local 40146 typ host generation 0 ufrag 9l1v network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2696799953 1 udp 1677729535 141.24.211.56 40146 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 9l1v network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:512843043 1 udp 33562623 141.24.210.113 49705 typ relay raddr 141.24.211.56 rport 40146 generation 0 ufrag 9l1v network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a407367d-85e5-49ac-bb02-fb4330dab130","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/a407367d-85e5-49ac-bb02-fb4330dab130'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130'"} device-1 | {"data":{"peerconnection":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","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/28473f7e-fb16-4b3f-b0cc-4581386d92e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7e54453aceb729cec043d38cc9da9bde","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7e54453aceb729cec043d38cc9da9bde","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"}}},"level":"info","message":"received a callback","requestID":"7e54453aceb729cec043d38cc9da9bde"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0a76e350-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28473f7e-fb16-4b3f-b0cc-4581386d92e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fc78f97-5ea0-4be9-a386-7d825282bb27","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.0672884} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.861589,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0a76e350-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","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":"0a76e350-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0a76e350-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8 200 12ms","method":"GET","requestID":"0a76e350-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"7e54453aceb729cec043d38cc9da9bde","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"7e54453aceb729cec043d38cc9da9bde"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a7bec60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2fde0fc-8f93-40d0-a85a-16a160af890a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.1012056} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.303699,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0a7bec60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","rebac_allow":false,"scope_allow":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":"0a7bec60-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a7bec60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling 200 14ms","method":"POST","requestID":"0a7bec60-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a7e8470-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3aefa0dc-8ee1-4640-becd-d59c3604ae1d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.1173587} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.328315,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0a7e8470-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","rebac_allow":false,"scope_allow":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":"0a7e8470-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a7e8470-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling 200 12ms","method":"POST","requestID":"0a7e8470-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak","level":"info","message":"auth send jwt","requestID":"b12157d287bcc67dab095790a2e9eedf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b12157d287bcc67dab095790a2e9eedf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","requestID":"b12157d287bcc67dab095790a2e9eedf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.001789,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b12157d287bcc67dab095790a2e9eedf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752301,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b12157d287bcc67dab095790a2e9eedf","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","requestID":"b12157d287bcc67dab095790a2e9eedf"} experiment-1 | {"level":"info","message":"GET /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d 200 19ms","method":"GET","requestID":"b12157d287bcc67dab095790a2e9eedf","responseTime":19,"status":200,"url":"/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b12157d287bcc67dab095790a2e9eedf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak","level":"info","message":"auth send jwt","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.335623,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752301,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Attempting to finish experiment","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.299296,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752301,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8","device":"a407367d-85e5-49ac-bb02-fb4330dab130","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b743f3f0-7075-4fe0-b0d8-9b97dbabb038","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/28473f7e-fb16-4b3f-b0cc-4581386d92e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28473f7e-fb16-4b3f-b0cc-4581386d92e8': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28473f7e-fb16-4b3f-b0cc-4581386d92e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"b09b01e4-ba41-48e6-a7de-ccac4ea60d1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3075926} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e657fcdf0914ffc81a61f81fdc960c79","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e657fcdf0914ffc81a61f81fdc960c79","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5897f2a-8903-4d4d-a354-d60ce67bf8da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3083677} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"82e3554a312c668995786c4d063efc4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"82e3554a312c668995786c4d063efc4b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"}}},"level":"info","message":"received a callback","requestID":"e657fcdf0914ffc81a61f81fdc960c79"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"}}},"level":"info","message":"received a callback","requestID":"82e3554a312c668995786c4d063efc4b"} device-1 | {"data":{"peerconnection":"28473f7e-fb16-4b3f-b0cc-4581386d92e8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8 204 55ms","method":"DELETE","requestID":"0a97ffe0-4911-11ef-863d-25b977f1d961","responseTime":55,"status":204,"url":"/peerconnections/28473f7e-fb16-4b3f-b0cc-4581386d92e8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"},"level":"info","message":"Successfully finished experiment","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0aa4d120-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb743f3f0-7075-4fe0-b0d8-9b97dbabb038","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c886f140-3d3a-4428-81da-2de41bcd9061","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3699067} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.343254,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0aa4d120-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038","object_type":"device","rebac_allow":false,"scope_allow":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":"0aa4d120-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"080aabe5-bd0a-4696-a84a-1a58e565cd63","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3772287} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0aa4d120-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/signaling 200 16ms","method":"POST","requestID":"0aa4d120-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/b743f3f0-7075-4fe0-b0d8-9b97dbabb038/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f308b74-ea27-4cd9-a4dc-b9ed6fbd3d09","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3786855} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0aa80570-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa407367d-85e5-49ac-bb02-fb4330dab130","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49fae73f-36d6-41c4-85bd-a6fe7e956986","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.3901315} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.734528,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0aa80570-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a407367d-85e5-49ac-bb02-fb4330dab130","object_type":"device","rebac_allow":false,"scope_allow":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":"0aa80570-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0aa80570-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling 200 15ms","method":"POST","requestID":"0aa80570-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/a407367d-85e5-49ac-bb02-fb4330dab130/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.201","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2988","request_time":"4.288","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2b6b63b2fa644aae2da1247b59db9a19"} experiment-1 | {"level":"info","message":"DELETE /experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d 204 198ms","method":"DELETE","requestID":"7e90ee3b4cf4c0d0452032e84eb7b3fe","responseTime":198,"status":204,"url":"/experiments/3a2bbfad-1b63-4f7b-9db0-8f8c78cbd32d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"e657fcdf0914ffc81a61f81fdc960c79","responseTime":151,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak","level":"info","message":"auth send jwt","requestID":"8e7cc519e8ebbb40107b89e104cea238"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.157","http_referrer":"","http_user_agent":"node-fetch","requestID":"e657fcdf0914ffc81a61f81fdc960c79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8e7cc519e8ebbb40107b89e104cea238","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 152ms","method":"POST","requestID":"82e3554a312c668995786c4d063efc4b","responseTime":152,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"82e3554a312c668995786c4d063efc4b"} device-1 | {"level":"info","message":"postDevices called","requestID":"8e7cc519e8ebbb40107b89e104cea238"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.851","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5820f8dceef8ed45fd198c2ba51c873a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.026469,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8e7cc519e8ebbb40107b89e104cea238","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752301,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","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/b743f3f0-7075-4fe0-b0d8-9b97dbabb038' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9bbe1efd-3d47-44e5-b51a-36888d6ba353","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.4893515} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","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/a407367d-85e5-49ac-bb02-fb4330dab130' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e98e64a3-b025-4977-8f50-fc130bf105e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.4957268} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"2628c3cf-9182-4fa1-8d83-f00b93e75ecc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.511013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b7e9844-5843-463b-9024-0813494b2a5c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5113318} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.510988552Z"}]},"request_id":"95a2bff3-eb35-44d9-b437-13ac25bfae7e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5158966} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8e7cc519e8ebbb40107b89e104cea238"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"8e7cc519e8ebbb40107b89e104cea238","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8e7cc519e8ebbb40107b89e104cea238"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak","level":"info","message":"auth send jwt","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.868891,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752301,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwMX0.2qXrPl2EJ8x64tR9roRoSoFEN4YgfFPAea0SI11sfak"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d02cf323-4c90-458c-afb3-1176d2c41456","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5407896} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f0fdf47-3820-4d31-b246-4d0448e3a716","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.546248} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"cd9cae0f-4b8c-4545-9f8c-5ae8073e858d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5563776} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54365fc6-54ca-43c0-b7ed-47324368e7d2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5566623} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.556359565Z"}]},"request_id":"8b43cb84-7403-46cc-bbce-34298b6ce11b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752301.5618412} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64"} gateway-1 | {"time_local":"23/Jul/2024:16:31:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1d017c78c4ce56e51ef628ed0c3ccc64","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0e9f428845b71a319da01ffd041d95c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f0e9f428845b71a319da01ffd041d95c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/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":"f0e9f428845b71a319da01ffd041d95c"} device-1 | {"level":"info","message":"OPTIONS /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/websocket 200 1ms","method":"OPTIONS","requestID":"f0e9f428845b71a319da01ffd041d95c","responseTime":1,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7bc5580edaf12741970be9a9b9c82776","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7bc5580edaf12741970be9a9b9c82776","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/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":"7bc5580edaf12741970be9a9b9c82776"} device-1 | {"level":"info","message":"OPTIONS /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/websocket 200 1ms","method":"OPTIONS","requestID":"7bc5580edaf12741970be9a9b9c82776","responseTime":1,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"49f21297671c8ee9fe10f0dffc55c1af"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"49f21297671c8ee9fe10f0dffc55c1af","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"49f21297671c8ee9fe10f0dffc55c1af"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.45345,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209573,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"49f21297671c8ee9fe10f0dffc55c1af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49f21297671c8ee9fe10f0dffc55c1af","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/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":"bd60c94ceafcbe11a8d4aee419ea2b1f"} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/websocket 200 27ms","method":"POST","requestID":"bd60c94ceafcbe11a8d4aee419ea2b1f","responseTime":27,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"49f21297671c8ee9fe10f0dffc55c1af"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/websocket 200 34ms","method":"POST","requestID":"49f21297671c8ee9fe10f0dffc55c1af","responseTime":34,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"49f21297671c8ee9fe10f0dffc55c1af"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"b7816378e2f94b94faf981912d274b5c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b7816378e2f94b94faf981912d274b5c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7816378e2f94b94faf981912d274b5c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.44326,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b7816378e2f94b94faf981912d274b5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7816378e2f94b94faf981912d274b5c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.510988552Z"}]},"request_id":"5ed0aa55-2235-45a4-b3b3-9c8342770896","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.5934625} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7816378e2f94b94faf981912d274b5c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7816378e2f94b94faf981912d274b5c"} device-1 | {"level":"info","message":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? 200 17ms","method":"GET","requestID":"b7816378e2f94b94faf981912d274b5c","responseTime":17,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7816378e2f94b94faf981912d274b5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"61200c48fe495fd3451fae34709188a8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"61200c48fe495fd3451fae34709188a8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"61200c48fe495fd3451fae34709188a8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163866,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"61200c48fe495fd3451fae34709188a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61200c48fe495fd3451fae34709188a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.556359565Z"}]},"request_id":"1a076038-6a5a-459c-892e-8be8dfefbd43","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.6205573} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"61200c48fe495fd3451fae34709188a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"61200c48fe495fd3451fae34709188a8"} device-1 | {"level":"info","message":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? 200 17ms","method":"GET","requestID":"61200c48fe495fd3451fae34709188a8","responseTime":17,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61200c48fe495fd3451fae34709188a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6f40b9fa7796c3e5eae51a03a25c6429","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.19502,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6f40b9fa7796c3e5eae51a03a25c6429","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f40b9fa7796c3e5eae51a03a25c6429","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to run experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to book experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully booked experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c06f930-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c076e60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.096714,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c06f930-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c06f930-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.954987,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c076e60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0c076e60-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.510988552Z"}]},"request_id":"d07d012e-cb1f-4c3e-858c-c749f0a20308","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.6977882} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c06f930-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.556359565Z"}]},"request_id":"644eeba5-526f-4dc6-9473-3d4aca8e24f9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.7036781} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c06f930-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c076e60-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? 200 22ms","method":"GET","requestID":"0c06f930-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c076e60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? 200 24ms","method":"GET","requestID":"0c076e60-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Setting up experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully set up experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c13a360-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c13f180-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c141890-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully running experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194688,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c13a360-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c13a360-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848973,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c13f180-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c13f180-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46122","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.510988552Z"}]},"request_id":"ad7399f0-6142-47ac-b020-2c6644021b15","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.7809284} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11b2c79a-3d6a-4933-92de-56e8d2549b2d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.7816453} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c13a360-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.556359565Z"}]},"request_id":"e9079214-92ee-4fd3-b9c8-e356580fe49c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.78222} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c13f180-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46122","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.132709,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c141890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","rebac_allow":false,"scope_allow":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":"0c141890-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c13f180-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? 200 23ms","method":"GET","requestID":"0c13f180-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c13a360-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? 200 26ms","method":"GET","requestID":"0c13a360-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c141890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe10de55d-1901-4a67-81e8-9e6375014ceb#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe10de55d-1901-4a67-81e8-9e6375014ceb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"f9e8284e-16cd-4bcf-91bd-046e44184856","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.792852} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling 200 24ms","method":"POST","requestID":"0c141890-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca5ece0d-91dd-4345-81e9-880407d65f19","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.793403} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c181030-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"6f40b9fa7796c3e5eae51a03a25c6429","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c188560-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b7090ad-679a-4505-a18d-945dda98176e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.802675} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.777607,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8dd1b27-47ba-4500-9836-3ea8e0684079","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.8036268} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c181030-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","rebac_allow":false,"scope_allow":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":"0c181030-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.055006,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c188560-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","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/e10de55d-1901-4a67-81e8-9e6375014ceb","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0c188560-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"level":"info","message":"POST /experiments? 201 173ms","method":"POST","requestID":"6f40b9fa7796c3e5eae51a03a25c6429","responseTime":173,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c181030-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling 200 14ms","method":"POST","requestID":"0c181030-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c188560-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling 200 13ms","method":"POST","requestID":"0c188560-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c1a8130-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"57f1b7e8e9770bbf63832037abd4f49b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"57f1b7e8e9770bbf63832037abd4f49b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57f1b7e8e9770bbf63832037abd4f49b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6233,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"57f1b7e8e9770bbf63832037abd4f49b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"57f1b7e8e9770bbf63832037abd4f49b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"799e003c-94d2-4351-addb-b77750864d94","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.816281} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.263583,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c1a8130-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","rebac_allow":false,"scope_allow":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":"0c1a8130-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.510988552Z"}]},"request_id":"eeb17ed2-b5ce-4210-8de0-18d5aa3e6f9a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.8206313} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c1a8130-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling 200 9ms","method":"POST","requestID":"0c1a8130-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"57f1b7e8e9770bbf63832037abd4f49b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Building connection plan","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"e2eb2448-e942-4165-99fa-605d1c3fb653"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"bba47299-2323-4616-829e-f6032d25571e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"98f3e68e-ee1d-4663-8125-9f4c0b8db3dd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57f1b7e8e9770bbf63832037abd4f49b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57f1b7e8e9770bbf63832037abd4f49b"} device-1 | {"level":"info","message":"GET /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5? 200 13ms","method":"GET","requestID":"57f1b7e8e9770bbf63832037abd4f49b","responseTime":13,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.722645,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI","level":"info","message":"auth send jwt","requestID":"2f84ef5b0be622455ec4499c7479ed2a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f84ef5b0be622455ec4499c7479ed2a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f84ef5b0be622455ec4499c7479ed2a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738492,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2f84ef5b0be622455ec4499c7479ed2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752303,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwM30.UZU2zldM_k4wLp7McHBNx35onOWqsoAxarBhn63CnVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2f84ef5b0be622455ec4499c7479ed2a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"1271159a-a676-4b72-9e64-c4f5d62267fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.838117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32378923-4041-419a-99aa-6c9a4ce275a4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.8382943} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:41.556359565Z"}]},"request_id":"4a3fc3ab-802c-4c46-a2d9-d1cde507b638","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.838905} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f84ef5b0be622455ec4499c7479ed2a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f84ef5b0be622455ec4499c7479ed2a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f84ef5b0be622455ec4499c7479ed2a"} device-1 | {"level":"info","message":"GET /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c? 200 12ms","method":"GET","requestID":"2f84ef5b0be622455ec4499c7479ed2a","responseTime":12,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4'","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4'","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0c1c7d00-4911-11ef-863d-25b977f1d961"} 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":"0c1c7d00-4911-11ef-863d-25b977f1d961","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":"0c1c7d00-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6f40b9fa7796c3e5eae51a03a25c6429"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c24e170-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23ff00cf-5428-4823-969c-59934261a41a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.8838456} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.073256,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c24e170-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","rebac_allow":false,"scope_allow":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":"0c24e170-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c24e170-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling 200 8ms","method":"POST","requestID":"0c24e170-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c266810-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f7dbd68-9541-40a7-afa5-e313acd63e33","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.8938322} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.442685,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c266810-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","rebac_allow":false,"scope_allow":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":"0c266810-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c266810-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling 200 11ms","method":"POST","requestID":"0c266810-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling"} device-1 | {"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1600480686607478287 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:P0kp\r\na=ice-pwd:lBhlksK7pReTOa/b7qNdPrYf\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C9:83:3D:6B:55:66:D3:77:5D:1F:4E:B9:64:9F:A3:34:5D:ED:E7:F3:21:B3:01:37:86:2F:6D:74:38:3E:25:29\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1465155085868577503 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:30l5\r\na=ice-pwd:Re5QgVTIMsBBMc2O2vGicPrb\r\na=ice-options:trickle\r\na=fingerprint:sha-256 75:7A:0B:31:1B:11:F5:04:A2:A8:8E:79:E1:6B:52:FA:FF:A7:D8:6B:D1:4D:35:0E:2D:3F:38:57:2E:3A:B9:51\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3803907111 1 udp 2113937151 c5a326f8-6c3b-4882-8b46-ee07cf770c43.local 51141 typ host generation 0 ufrag 30l5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1905304884 1 udp 1677729535 141.24.211.56 51141 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 30l5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","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/e9594b30-720f-448d-b3ad-c56e9b78d2e5'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5'"} device-1 | {"content":{"candidate":"candidate:79195237 1 udp 2113937151 9edb4bd9-0292-49c9-8db9-949f074dd5ae.local 33081 typ host generation 0 ufrag P0kp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2543046006 1 udp 1677729535 141.24.211.56 33081 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag P0kp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","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/fa747f64-7712-4366-b5bf-f73d59be5d7c'"} device-1 | {"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","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/dd29640e-a46f-4499-bef9-f40956b519e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc15b7bb37f1af75f70fe3bfe2b00f08","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bc15b7bb37f1af75f70fe3bfe2b00f08","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","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":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"}}},"level":"info","message":"received a callback","requestID":"bc15b7bb37f1af75f70fe3bfe2b00f08"} device-1 | {"device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"bc15b7bb37f1af75f70fe3bfe2b00f08","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"bc15b7bb37f1af75f70fe3bfe2b00f08"} device-1 | {"device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","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/dd29640e-a46f-4499-bef9-f40956b519e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f529b5d780e6d1b5239835ae6a286bbf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f529b5d780e6d1b5239835ae6a286bbf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"}}},"level":"info","message":"received a callback","requestID":"f529b5d780e6d1b5239835ae6a286bbf"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0c33ae80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdd29640e-a46f-4499-bef9-f40956b519e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c642d358-eb40-4d0f-9c6d-9fde79151c67","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752303.9813154} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.460749,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c33ae80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","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":"0c33ae80-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0c33ae80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4 200 10ms","method":"GET","requestID":"0c33ae80-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"f529b5d780e6d1b5239835ae6a286bbf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"f529b5d780e6d1b5239835ae6a286bbf","responseTime":40,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c3905b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acaece99-85cd-4a56-a897-b2c1338dea3d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.0171058} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.453846,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c3905b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","rebac_allow":false,"scope_allow":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":"0c3905b0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c3905b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling 200 11ms","method":"POST","requestID":"0c3905b0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c3b2890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d283c7ad-f7f4-4392-a9d4-1fd09249cc7f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.0297592} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.268816,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c3b2890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","rebac_allow":false,"scope_allow":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":"0c3b2890-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c3b2890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling 200 9ms","method":"POST","requestID":"0c3b2890-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ","level":"info","message":"auth send jwt","requestID":"c7219039cf5d29cceb310acc992e8478"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7219039cf5d29cceb310acc992e8478","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","requestID":"c7219039cf5d29cceb310acc992e8478"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.235515,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c7219039cf5d29cceb310acc992e8478","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7219039cf5d29cceb310acc992e8478","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","requestID":"c7219039cf5d29cceb310acc992e8478"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7219039cf5d29cceb310acc992e8478"} experiment-1 | {"level":"info","message":"GET /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb 200 17ms","method":"GET","requestID":"c7219039cf5d29cceb310acc992e8478","responseTime":17,"status":200,"url":"/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ","level":"info","message":"auth send jwt","requestID":"c90b0ba2337c7f6ea25e85570c549558"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c90b0ba2337c7f6ea25e85570c549558","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","requestID":"c90b0ba2337c7f6ea25e85570c549558"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.841358,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c90b0ba2337c7f6ea25e85570c549558","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c90b0ba2337c7f6ea25e85570c549558","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Attempting to finish experiment","requestID":"c90b0ba2337c7f6ea25e85570c549558"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0c5a7060-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.699155,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c5a7060-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c5a7060-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","device":"e9594b30-720f-448d-b3ad-c56e9b78d2e5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4","device":"fa747f64-7712-4366-b5bf-f73d59be5d7c","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/dd29640e-a46f-4499-bef9-f40956b519e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdd29640e-a46f-4499-bef9-f40956b519e4': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdd29640e-a46f-4499-bef9-f40956b519e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"97f2a10e-8943-4f87-83fe-6360facc5884","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.255732} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2680952b5e0cae990e714987e08da6f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2680952b5e0cae990e714987e08da6f8","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1712c0c1-cd27-42bb-9640-a67ce1aaa5e7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.2561548} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8bbadb94b1ece582200608d2b5d8d7a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"}}},"level":"info","message":"received a callback","requestID":"2680952b5e0cae990e714987e08da6f8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f8bbadb94b1ece582200608d2b5d8d7a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"}}},"level":"info","message":"received a callback","requestID":"f8bbadb94b1ece582200608d2b5d8d7a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0c5a7060-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"dd29640e-a46f-4499-bef9-f40956b519e4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0c5a7060-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4 204 46ms","method":"DELETE","requestID":"0c5a7060-4911-11ef-863d-25b977f1d961","responseTime":46,"status":204,"url":"/peerconnections/dd29640e-a46f-4499-bef9-f40956b519e4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"},"level":"info","message":"Successfully finished experiment","requestID":"c90b0ba2337c7f6ea25e85570c549558"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c64a990-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe9594b30-720f-448d-b3ad-c56e9b78d2e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8b49b82-8bb0-4116-9df0-531dba7143ea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.3030398} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.489771,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c64a990-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5","object_type":"device","rebac_allow":false,"scope_allow":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":"0c64a990-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c64a990-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling 200 12ms","method":"POST","requestID":"0c64a990-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c66f380-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffa747f64-7712-4366-b5bf-f73d59be5d7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"525cf49b-b9c0-46bf-9fae-92e871976f77","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.3165781} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.547674,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c66f380-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c","object_type":"device","rebac_allow":false,"scope_allow":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":"0c66f380-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe10de55d-1901-4a67-81e8-9e6375014ceb': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe10de55d-1901-4a67-81e8-9e6375014ceb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"2628717f-0a58-4139-93fe-a375b96d1e07","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.3178647} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46761721-7c75-4061-bb84-b6453fa25d98","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.3182611} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"c90b0ba2337c7f6ea25e85570c549558","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c66f380-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling 200 9ms","method":"POST","requestID":"0c66f380-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/fa747f64-7712-4366-b5bf-f73d59be5d7c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb","requestID":"c90b0ba2337c7f6ea25e85570c549558"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb 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":"c90b0ba2337c7f6ea25e85570c549558"} experiment-1 | {"level":"info","message":"DELETE /experiments/e10de55d-1901-4a67-81e8-9e6375014ceb 204 166ms","method":"DELETE","requestID":"c90b0ba2337c7f6ea25e85570c549558","responseTime":166,"status":204,"url":"/experiments/e10de55d-1901-4a67-81e8-9e6375014ceb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"2680952b5e0cae990e714987e08da6f8","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"2680952b5e0cae990e714987e08da6f8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"f8bbadb94b1ece582200608d2b5d8d7a","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"f8bbadb94b1ece582200608d2b5d8d7a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ","level":"info","message":"auth send jwt","requestID":"4b7ab57d14e9a81666146febb693b9c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4b7ab57d14e9a81666146febb693b9c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4b7ab57d14e9a81666146febb693b9c2"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2629","request_time":"0.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":"47811be62ccbce1a8563581bd049d67a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923775,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4b7ab57d14e9a81666146febb693b9c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2631","request_time":"0.837","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c74d5294312629c2a2bfa06ae5aacdec"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e9594b30-720f-448d-b3ad-c56e9b78d2e5' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b7235e0-f819-4aff-97e9-4aeb1f7d60ea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4158194} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","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/fa747f64-7712-4366-b5bf-f73d59be5d7c' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d04afbe9-43e6-4c97-a7bb-b84def83ac13","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4209535} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8ef77b31-04f4-4620-95b7-64268951151f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.432412} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"347ea0b2-4f2c-4ac3-8bdf-bbf30a0eeb2a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4324903} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.432391004Z"}]},"request_id":"734a1f11-522a-4a96-ba6b-36b683d9912b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4370685} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4b7ab57d14e9a81666146febb693b9c2"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b7ab57d14e9a81666146febb693b9c2"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"4b7ab57d14e9a81666146febb693b9c2","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ","level":"info","message":"auth send jwt","requestID":"206f1d59a6c7a45ff35775f19834cb86"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"206f1d59a6c7a45ff35775f19834cb86","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"206f1d59a6c7a45ff35775f19834cb86"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.833259,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"206f1d59a6c7a45ff35775f19834cb86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7cc19381-b8bc-448a-8e0b-cbad60e58b52","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4603555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c9ec21f-f5c2-4b5d-a5f6-53d5c623b797","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4644125} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5b1095b2-654e-44a7-8c54-e783ad22b41a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4806204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae6c3af8-2c30-4293-8382-a107539a3252","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4808657} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"706bf2fe-c469-47fb-9f8a-72792ae049f7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.4843862} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"206f1d59a6c7a45ff35775f19834cb86"} gateway-1 | {"time_local":"23/Jul/2024:16:31:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"206f1d59a6c7a45ff35775f19834cb86"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"206f1d59a6c7a45ff35775f19834cb86","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ","level":"info","message":"auth send jwt","requestID":"d454d595c4f07e8806b991d478bd081c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d454d595c4f07e8806b991d478bd081c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d454d595c4f07e8806b991d478bd081c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805716,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d454d595c4f07e8806b991d478bd081c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752304,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNH0.fC52UEnn6_GDBivHXxEssYCD0e_Kemrxxg_v7LynjIQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d454d595c4f07e8806b991d478bd081c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"200d4a89-bd33-4766-bb10-9dc7efa4e150","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752304.9924831} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d454d595c4f07e8806b991d478bd081c","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6434cff9-7ed0-4c35-b91e-407267740e76","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752305.0003705} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d454d595c4f07e8806b991d478bd081c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"461d528c-cb03-4f23-a6db-0311747f610a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752305.0136573} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d454d595c4f07e8806b991d478bd081c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d454d595c4f07e8806b991d478bd081c"} device-1 | {"level":"info","message":"PATCH /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117 200 40ms","method":"PATCH","requestID":"d454d595c4f07e8806b991d478bd081c","responseTime":40,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"} gateway-1 | {"time_local":"23/Jul/2024:16:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d454d595c4f07e8806b991d478bd081c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNX0.MSHsGwz5XDBQkBRZTlN6Kr88k6jjBhuIoLzlxrM8h_E","level":"info","message":"auth send jwt","requestID":"1d4d5f37164a0bc479db6576c5757420"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1d4d5f37164a0bc479db6576c5757420","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1d4d5f37164a0bc479db6576c5757420"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.846965,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d4d5f37164a0bc479db6576c5757420","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752305,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNX0.MSHsGwz5XDBQkBRZTlN6Kr88k6jjBhuIoLzlxrM8h_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1d4d5f37164a0bc479db6576c5757420","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1d4d5f37164a0bc479db6576c5757420"} gateway-1 | {"time_local":"23/Jul/2024:16:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1d4d5f37164a0bc479db6576c5757420"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/websocket 200 22ms","method":"POST","requestID":"1d4d5f37164a0bc479db6576c5757420","responseTime":22,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39e5a1eb42ec6addbfe19bab7991d619","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"39e5a1eb42ec6addbfe19bab7991d619","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/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":"39e5a1eb42ec6addbfe19bab7991d619"} device-1 | {"level":"info","message":"OPTIONS /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/websocket 200 0ms","method":"OPTIONS","requestID":"39e5a1eb42ec6addbfe19bab7991d619","responseTime":0,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"e0a6d4bbe26b6242efe1b0460a04b692"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e0a6d4bbe26b6242efe1b0460a04b692","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e0a6d4bbe26b6242efe1b0460a04b692"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226545,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e0a6d4bbe26b6242efe1b0460a04b692","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e0a6d4bbe26b6242efe1b0460a04b692","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e0a6d4bbe26b6242efe1b0460a04b692"} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/websocket 200 22ms","method":"POST","requestID":"e0a6d4bbe26b6242efe1b0460a04b692","responseTime":22,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/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":"e0a6d4bbe26b6242efe1b0460a04b692"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"2b219c8862ab09b9cff8ee59fb651012"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"2b219c8862ab09b9cff8ee59fb651012","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b219c8862ab09b9cff8ee59fb651012"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272529,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2b219c8862ab09b9cff8ee59fb651012","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b219c8862ab09b9cff8ee59fb651012","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.432391004Z"}]},"request_id":"bfd11681-3741-471f-83ee-5aa54ad86f95","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.5363011} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2b219c8862ab09b9cff8ee59fb651012","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b219c8862ab09b9cff8ee59fb651012"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b219c8862ab09b9cff8ee59fb651012"} device-1 | {"level":"info","message":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? 200 19ms","method":"GET","requestID":"2b219c8862ab09b9cff8ee59fb651012","responseTime":19,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"3db2fe68946f2479bdcf40be7409b575"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3db2fe68946f2479bdcf40be7409b575","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3db2fe68946f2479bdcf40be7409b575"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195849,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3db2fe68946f2479bdcf40be7409b575","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3db2fe68946f2479bdcf40be7409b575","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"3fdcdf11-24fd-4bdf-be25-02cdaec50b09","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.5638337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3db2fe68946f2479bdcf40be7409b575","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3db2fe68946f2479bdcf40be7409b575"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3db2fe68946f2479bdcf40be7409b575"} device-1 | {"level":"info","message":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? 200 20ms","method":"GET","requestID":"3db2fe68946f2479bdcf40be7409b575","responseTime":20,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"882e1cd9ec3eb8b15d7054b91827deda","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.294771,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"882e1cd9ec3eb8b15d7054b91827deda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"882e1cd9ec3eb8b15d7054b91827deda","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to run experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to book experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully booked experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dc80a20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dc85840-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768883,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dc80a20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0dc80a20-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.792523,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dc85840-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0dc85840-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.432391004Z"}]},"request_id":"10c17f02-ca67-4565-aa02-8bebe098daac","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.639296} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0dc80a20-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"1e8e12c5-5b91-42e2-aa62-eaa5b86e509b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.6410017} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0dc85840-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dc80a20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? 200 23ms","method":"GET","requestID":"0dc80a20-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dc85840-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? 200 22ms","method":"GET","requestID":"0dc85840-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Setting up experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully locked booking for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to update booking for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully updated booking for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully set up experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dd48d40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dd50270-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dd55090-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.783147,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully running experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dd48d40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0dd48d40-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305281,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46122","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dd50270-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0dd50270-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46122","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.727877,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb7cc535-54b6-424c-87c9-ccdd4d48ea2d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7246497} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dd55090-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","rebac_allow":false,"scope_allow":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":"0dd55090-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.432391004Z"}]},"request_id":"086ad5c2-ae44-4c8a-97ab-e5dbf38c71f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7311788} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dd55090-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"0dd48d40-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"363dcda0-908e-4a63-a1b5-74d42ee3fc3a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7364569} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling 200 24ms","method":"POST","requestID":"0dd55090-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0dd50270-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dd9bd60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dd48d40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? 200 40ms","method":"GET","requestID":"0dd48d40-4911-11ef-863d-25b977f1d961","responseTime":40,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dd50270-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9809036d-c253-4f4a-b4ee-1af3f561a516#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9809036d-c253-4f4a-b4ee-1af3f561a516","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b50549d6-db94-4148-b553-a256150ddd38","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.746855} device-1 | {"level":"info","message":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? 200 39ms","method":"GET","requestID":"0dd50270-4911-11ef-863d-25b977f1d961","responseTime":39,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18f712e8-b36a-4098-a8ad-736f9a5ea054","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7473257} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"882e1cd9ec3eb8b15d7054b91827deda","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d256146-0381-4c46-90a9-7c423ec6e154","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7531004} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.482671,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ddbe040-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dd9bd60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","rebac_allow":false,"scope_allow":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":"0dd9bd60-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dd9bd60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling 200 20ms","method":"POST","requestID":"0dd9bd60-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5dbc0f65-4b2a-4bed-ab6d-f3245d35fd16","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7661076} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.452792,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0ddbe040-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","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/9809036d-c253-4f4a-b4ee-1af3f561a516","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0ddbe040-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.197","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"level":"info","message":"POST /experiments? 201 190ms","method":"POST","requestID":"882e1cd9ec3eb8b15d7054b91827deda","responseTime":190,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ddbe040-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling 200 16ms","method":"POST","requestID":"0ddbe040-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"f3212d20314386c78aff2c513ab6582d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ddeed80-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f3212d20314386c78aff2c513ab6582d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3212d20314386c78aff2c513ab6582d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac55adfd-3706-4531-8f6b-2738261a76ee","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7828054} authorization-1 | {"client_addr":"127.0.0.1:46120","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219816,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f3212d20314386c78aff2c513ab6582d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3212d20314386c78aff2c513ab6582d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.338711,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0ddeed80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","rebac_allow":false,"scope_allow":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":"0ddeed80-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.432391004Z"}]},"request_id":"f1ddc551-8d79-45d5-9131-f412e6ad541e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.7889426} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ddeed80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling 200 13ms","method":"POST","requestID":"0ddeed80-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f3212d20314386c78aff2c513ab6582d","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Building connection plan","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"7a3ee548-3ebe-40c0-9535-f612149f7ae7"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"54e351a7-0fec-4b91-9588-ff285dedc8ad"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"4e171010-cc7b-49ee-8516-63b74fcceebc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3212d20314386c78aff2c513ab6582d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3212d20314386c78aff2c513ab6582d"} device-1 | {"level":"info","message":"GET /devices/5552e99b-4ad9-4547-a868-1062b62d90c2? 200 16ms","method":"GET","requestID":"f3212d20314386c78aff2c513ab6582d","responseTime":16,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.161035,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0de15e80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0de15e80-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q","level":"info","message":"auth send jwt","requestID":"951697d106b10b74d4475a2983e01b91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"951697d106b10b74d4475a2983e01b91","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"951697d106b10b74d4475a2983e01b91"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.851183,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"951697d106b10b74d4475a2983e01b91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752306,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwNn0.Rgtjl_PD4hTn-6izwVvKCM5K0bVrgRevNfgmJkgQ5-Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"951697d106b10b74d4475a2983e01b91","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:44.480599856Z"}]},"request_id":"b0fd4e8f-5884-44af-869d-ab8c5fe07a66","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.8089952} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"951697d106b10b74d4475a2983e01b91","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"030cb3ee-cd88-490a-9cd0-75d548efa6b7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.8110485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db1b8d6f-71fa-40e3-a1e9-3428f0da221d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.811549} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"0de15e80-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"951697d106b10b74d4475a2983e01b91"} gateway-1 | {"time_local":"23/Jul/2024:16:31:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"951697d106b10b74d4475a2983e01b91"} device-1 | {"level":"info","message":"GET /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117? 200 15ms","method":"GET","requestID":"951697d106b10b74d4475a2983e01b91","responseTime":15,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074'","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074'","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"0de15e80-4911-11ef-863d-25b977f1d961","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0de15e80-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"882e1cd9ec3eb8b15d7054b91827deda"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dead460-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d4252d75-677a-4ca4-bab8-df00f54c1e1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.8590016} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.259734,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dead460-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","rebac_allow":false,"scope_allow":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":"0dead460-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dead460-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling 200 11ms","method":"POST","requestID":"0dead460-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 9136435637193973182 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:ItNt\r\na=ice-pwd:rMBrNkdQkafFS5mqIZKTBJBn\r\na=ice-options:trickle\r\na=fingerprint:sha-256 23:33:D0:5B:7D:C4:F9:41:57:6B:0C:C1:36:0A:9A:FE:3A:9B:65:76:2F:18:37:BA:10:8D:7F:DD:E3:5F:C4:00\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2'"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ded4560-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dca95d0-24f6-4823-95c4-eb5fd737bdd0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752306.8754225} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.074316,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0ded4560-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","rebac_allow":false,"scope_allow":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":"0ded4560-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ded4560-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling 200 9ms","method":"POST","requestID":"0ded4560-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling"} device-1 | {"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/2d61e196-15de-4c2c-bff3-e821cd8e0074' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4355a2f1ff48d698da9e3ab346723263","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4355a2f1ff48d698da9e3ab346723263","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"}}},"level":"info","message":"received a callback","requestID":"4355a2f1ff48d698da9e3ab346723263"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"4355a2f1ff48d698da9e3ab346723263","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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":"4355a2f1ff48d698da9e3ab346723263"} device-1 | {"content":{"candidate":"candidate:3691166730 1 udp 2113937151 82d4b96f-e128-4d84-854f-25ea0fd2fe79.local 57466 typ host generation 0 ufrag ItNt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1328094489 1 udp 1677729535 141.24.211.56 57466 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ItNt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4043679467 1 udp 33562623 141.24.210.113 50809 typ relay raddr 141.24.211.56 rport 57466 generation 0 ufrag ItNt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5552e99b-4ad9-4547-a868-1062b62d90c2","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/5552e99b-4ad9-4547-a868-1062b62d90c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2'"} device-1 | {"data":{"peerconnection":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"2d61e196-15de-4c2c-bff3-e821cd8e0074","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/2d61e196-15de-4c2c-bff3-e821cd8e0074' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"14e7db925b41c867420dca94ee4cd95d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"14e7db925b41c867420dca94ee4cd95d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"}}},"level":"info","message":"received a callback","requestID":"14e7db925b41c867420dca94ee4cd95d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0f2f1430-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d61e196-15de-4c2c-bff3-e821cd8e0074","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f6976aa-0e26-499d-b072-7f9037cfb3e3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752308.9845433} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.824576,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f2f1430-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","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":"0f2f1430-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0f2f1430-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074 200 10ms","method":"GET","requestID":"0f2f1430-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"14e7db925b41c867420dca94ee4cd95d","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"14e7db925b41c867420dca94ee4cd95d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f3332e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9341eb7e-44c6-46d4-9ae4-33053e98774f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.0121148} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.787172,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f3332e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","rebac_allow":false,"scope_allow":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":"0f3332e0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f3332e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling 200 10ms","method":"POST","requestID":"0f3332e0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f352eb0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b340e2b-a9f1-4f23-a2a5-91e52f3c222b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.0237138} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.529468,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f352eb0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","rebac_allow":false,"scope_allow":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":"0f352eb0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f352eb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling 200 9ms","method":"POST","requestID":"0f352eb0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04","level":"info","message":"auth send jwt","requestID":"49c05815e8044ad5d76c98647bf9476d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"49c05815e8044ad5d76c98647bf9476d","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","requestID":"49c05815e8044ad5d76c98647bf9476d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.330587,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"49c05815e8044ad5d76c98647bf9476d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752309,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"49c05815e8044ad5d76c98647bf9476d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","requestID":"49c05815e8044ad5d76c98647bf9476d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49c05815e8044ad5d76c98647bf9476d"} experiment-1 | {"level":"info","message":"GET /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516 200 21ms","method":"GET","requestID":"49c05815e8044ad5d76c98647bf9476d","responseTime":21,"status":200,"url":"/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04","level":"info","message":"auth send jwt","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a62ae39c491fd46ead06f05e15ecfd6d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.936071,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a62ae39c491fd46ead06f05e15ecfd6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752309,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a62ae39c491fd46ead06f05e15ecfd6d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Attempting to finish experiment","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0f5f7300-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.382277,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f5f7300-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752309,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f5f7300-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074","device":"5552e99b-4ad9-4547-a868-1062b62d90c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4fe069cd-e897-4f24-9e7e-ceb31c232117","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/2d61e196-15de-4c2c-bff3-e821cd8e0074' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83fe47d03f7c0bedef4fbad6ff1c9108","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"83fe47d03f7c0bedef4fbad6ff1c9108","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d61e196-15de-4c2c-bff3-e821cd8e0074': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2d61e196-15de-4c2c-bff3-e821cd8e0074","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"2fd8de68-bbd3-4ffb-aaa0-e72f778ee02d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.3176897} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"625addfd-b93a-444e-9b69-c786e19328a0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.3180087} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1816aed3704403249fdfb17e3223d3e5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"1816aed3704403249fdfb17e3223d3e5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"}}},"level":"info","message":"received a callback","requestID":"83fe47d03f7c0bedef4fbad6ff1c9108"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"}}},"level":"info","message":"received a callback","requestID":"1816aed3704403249fdfb17e3223d3e5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"0f5f7300-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2d61e196-15de-4c2c-bff3-e821cd8e0074","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0f5f7300-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074 204 44ms","method":"DELETE","requestID":"0f5f7300-4911-11ef-863d-25b977f1d961","responseTime":44,"status":204,"url":"/peerconnections/2d61e196-15de-4c2c-bff3-e821cd8e0074"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"},"level":"info","message":"Successfully finished experiment","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f69fa50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fe069cd-e897-4f24-9e7e-ceb31c232117","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3344d7a-1c62-47f8-a444-a7d67d38ee00","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.37325} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.656536,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f69fa50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117","object_type":"device","rebac_allow":false,"scope_allow":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":"0f69fa50-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f69fa50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling 200 16ms","method":"POST","requestID":"0f69fa50-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9809036d-c253-4f4a-b4ee-1af3f561a516': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9809036d-c253-4f4a-b4ee-1af3f561a516","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"36983a3d-a263-4c91-81f8-02ee14f56edf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.3813522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5d79128-00bd-4e69-a7ee-4da4762d2085","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.3817058} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"a62ae39c491fd46ead06f05e15ecfd6d","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f6ce080-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5552e99b-4ad9-4547-a868-1062b62d90c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af0b19a5-df4b-464d-bb7f-458e51b71da7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.389533} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.580584,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f6ce080-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5552e99b-4ad9-4547-a868-1062b62d90c2","object_type":"device","rebac_allow":false,"scope_allow":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":"0f6ce080-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f6ce080-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling 200 13ms","method":"POST","requestID":"0f6ce080-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/5552e99b-4ad9-4547-a868-1062b62d90c2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a62ae39c491fd46ead06f05e15ecfd6d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2975","request_time":"4.400","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a5807117a09972f13bcac71ddbb4ea3c"} experiment-1 | {"level":"info","message":"DELETE /experiments/9809036d-c253-4f4a-b4ee-1af3f561a516 204 171ms","method":"DELETE","requestID":"a62ae39c491fd46ead06f05e15ecfd6d","responseTime":171,"status":204,"url":"/experiments/9809036d-c253-4f4a-b4ee-1af3f561a516"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"83fe47d03f7c0bedef4fbad6ff1c9108","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"83fe47d03f7c0bedef4fbad6ff1c9108"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"1816aed3704403249fdfb17e3223d3e5","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"1816aed3704403249fdfb17e3223d3e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04","level":"info","message":"auth send jwt","requestID":"c31951be2687246b9fe634bb3c305b5b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c31951be2687246b9fe634bb3c305b5b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c31951be2687246b9fe634bb3c305b5b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2485","request_time":"2.962","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"00cbd4d9cd73498d9be4d1fa34bb3f38"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.847648,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c31951be2687246b9fe634bb3c305b5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752309,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4fe069cd-e897-4f24-9e7e-ceb31c232117' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","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/5552e99b-4ad9-4547-a868-1062b62d90c2' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6c3a1056-39f1-42dc-93ef-291b15a7dc5e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.4765298} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edef2670-263a-4990-a1e0-ef6bddf37a09","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.4821095} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8fa56ba8-fd70-4e5e-9ccb-da8af68f6bf8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.492432} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e204520-a2b4-4786-8016-3aab7ae2cbf4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.492669} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"a7550821-0036-4e1d-9e57-3ed40dd218a5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.498342} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c31951be2687246b9fe634bb3c305b5b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c31951be2687246b9fe634bb3c305b5b"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"c31951be2687246b9fe634bb3c305b5b","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04","level":"info","message":"auth send jwt","requestID":"34da48899d9cf0433bc523ddbba7f7ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"34da48899d9cf0433bc523ddbba7f7ca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"34da48899d9cf0433bc523ddbba7f7ca"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.820685,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"34da48899d9cf0433bc523ddbba7f7ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752309,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMwOX0.PcFmwFgTkEANSq2iJIOjXdpcKPLvmCw0vr053fr_u04"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f0c59211-815c-4e36-a241-25a68ee28b5e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.5286534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4751dd78-261f-4a81-a188-7d29bf4c4fcf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.533664} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"6414635d-c1ba-4dcf-b5d5-318eee323a8e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.5443556} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d9dd452-0ad8-4b6b-b620-4f50f433a1c4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.544563} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.544333549Z"}]},"request_id":"ef91557b-819b-4659-b57c-df9775cac56b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752309.5489223} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"34da48899d9cf0433bc523ddbba7f7ca"} gateway-1 | {"time_local":"23/Jul/2024:16:31:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34da48899d9cf0433bc523ddbba7f7ca"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"34da48899d9cf0433bc523ddbba7f7ca","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMH0.1OxtU2eddVSneNMieBBHqzPQ61p_YAwlvhYYUFhkUM0","level":"info","message":"auth send jwt","requestID":"bc96db771956089bcda724dddde0457e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bc96db771956089bcda724dddde0457e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bc96db771956089bcda724dddde0457e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.090117,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bc96db771956089bcda724dddde0457e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752310,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMH0.1OxtU2eddVSneNMieBBHqzPQ61p_YAwlvhYYUFhkUM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bc96db771956089bcda724dddde0457e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"ccffedb1-c7c3-4a66-92af-2ab7fc36fae7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752310.043989} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bc96db771956089bcda724dddde0457e","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6703e402-030e-4454-824f-f6e283d0f52c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752310.0513387} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bc96db771956089bcda724dddde0457e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"7f232d4e-1ef9-48b4-b92c-eada7dfbc95d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752310.0625682} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bc96db771956089bcda724dddde0457e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bc96db771956089bcda724dddde0457e"} device-1 | {"level":"info","message":"PATCH /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf 200 35ms","method":"PATCH","requestID":"bc96db771956089bcda724dddde0457e","responseTime":36,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"} gateway-1 | {"time_local":"23/Jul/2024:16:31:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bc96db771956089bcda724dddde0457e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMH0.1OxtU2eddVSneNMieBBHqzPQ61p_YAwlvhYYUFhkUM0","level":"info","message":"auth send jwt","requestID":"955b1c25cb26d94355be53b844ca94ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"955b1c25cb26d94355be53b844ca94ae","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"955b1c25cb26d94355be53b844ca94ae"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.780162,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"955b1c25cb26d94355be53b844ca94ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752310,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMH0.1OxtU2eddVSneNMieBBHqzPQ61p_YAwlvhYYUFhkUM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"955b1c25cb26d94355be53b844ca94ae","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"955b1c25cb26d94355be53b844ca94ae"} gateway-1 | {"time_local":"23/Jul/2024:16:31:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"955b1c25cb26d94355be53b844ca94ae"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/websocket 200 18ms","method":"POST","requestID":"955b1c25cb26d94355be53b844ca94ae","responseTime":18,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86e69d2f6b8976da357bf48bd5e8121e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"86e69d2f6b8976da357bf48bd5e8121e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/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":"86e69d2f6b8976da357bf48bd5e8121e"} device-1 | {"level":"info","message":"OPTIONS /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/websocket 200 1ms","method":"OPTIONS","requestID":"86e69d2f6b8976da357bf48bd5e8121e","responseTime":1,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"be7fc5ee9555991da347f4b945d9eb9f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"be7fc5ee9555991da347f4b945d9eb9f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"be7fc5ee9555991da347f4b945d9eb9f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058576,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"be7fc5ee9555991da347f4b945d9eb9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be7fc5ee9555991da347f4b945d9eb9f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"be7fc5ee9555991da347f4b945d9eb9f"} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/websocket 200 21ms","method":"POST","requestID":"be7fc5ee9555991da347f4b945d9eb9f","responseTime":21,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/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":"be7fc5ee9555991da347f4b945d9eb9f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"0e84443af1e9d4951735f40344bda221"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e84443af1e9d4951735f40344bda221","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e84443af1e9d4951735f40344bda221"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.812166,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0e84443af1e9d4951735f40344bda221","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e84443af1e9d4951735f40344bda221","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"de359e42-ceb6-415c-b593-0d2158b2fac5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.5930595} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e84443af1e9d4951735f40344bda221","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e84443af1e9d4951735f40344bda221"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e84443af1e9d4951735f40344bda221"} device-1 | {"level":"info","message":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? 200 22ms","method":"GET","requestID":"0e84443af1e9d4951735f40344bda221","responseTime":22,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"8554a83aae4fe0624492c71784376323"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8554a83aae4fe0624492c71784376323","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8554a83aae4fe0624492c71784376323"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.861863,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8554a83aae4fe0624492c71784376323","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8554a83aae4fe0624492c71784376323","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.544333549Z"}]},"request_id":"cf9872bc-5c52-4e28-bab4-b6ec933c1729","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.6264944} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8554a83aae4fe0624492c71784376323","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8554a83aae4fe0624492c71784376323"} device-1 | {"level":"info","message":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? 200 21ms","method":"GET","requestID":"8554a83aae4fe0624492c71784376323","responseTime":21,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8554a83aae4fe0624492c71784376323"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"46e388aca2c9af092b5d63e0dc8cc619","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.181176,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"46e388aca2c9af092b5d63e0dc8cc619","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46e388aca2c9af092b5d63e0dc8cc619","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to run experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to book experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully booked experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10cc4970-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10cc9790-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656965,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10cc4970-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"10cc4970-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023131,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10cc9790-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10cc9790-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"89456af0-8da8-4943-93ac-19c31a9f9e4e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.6961863} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"10cc4970-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.544333549Z"}]},"request_id":"af22456e-8e81-4b9a-bd83-3d9f6fad9649","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.6999161} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10cc4970-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"10cc9790-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? 200 14ms","method":"GET","requestID":"10cc4970-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10cc9790-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? 200 16ms","method":"GET","requestID":"10cc9790-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Setting up experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully locked booking for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to update booking for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully updated booking for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully set up experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10d745f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10d79410-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10d7e230-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully running experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960817,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10d745f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10d745f0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720242,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10d79410-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"10d79410-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40646","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.544333549Z"}]},"request_id":"e7944078-c71b-421e-909b-e7f9b1ffa4a9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.773708} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eef45064-f6ae-4f1a-a2db-28e037b49c93","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.7738395} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10d79410-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:40646","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.580692,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"a762e897-8166-4d08-a95f-f30ff806162b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.7746193} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10d7e230-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","rebac_allow":false,"scope_allow":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":"10d7e230-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10d745f0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10d79410-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? 200 21ms","method":"GET","requestID":"10d79410-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10d7e230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling 200 19ms","method":"POST","requestID":"10d7e230-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10d745f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? 200 25ms","method":"GET","requestID":"10d745f0-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92d24175-d9fc-4d39-872c-57458e792108#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92d24175-d9fc-4d39-872c-57458e792108","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"7467aa38-21d0-4564-879e-4f3ea60e991d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.7846382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"329454f7-e2a3-46e2-b958-0504c56db96a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.784928} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10db64a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"46e388aca2c9af092b5d63e0dc8cc619","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10dbb2c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2906a2ca-9a69-4f71-8e12-49e192b5ccf4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.7919805} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.792282,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10db64a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","rebac_allow":false,"scope_allow":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":"10db64a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b9244f8-7e70-41db-b007-d01d61c7ea30","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.7964246} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.409162,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10dbb2c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","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":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"46e388aca2c9af092b5d63e0dc8cc619","responseTime":156,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"10dbb2c0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10db64a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling 200 15ms","method":"POST","requestID":"10db64a0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10dbb2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling 200 15ms","method":"POST","requestID":"10dbb2c0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10de71e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621318,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cf6c68768ecd8cd88e4576abf8d1ab80","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32adc1bd-d281-4f46-9227-9285a5d0602a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8112614} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.546509,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10de71e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","rebac_allow":false,"scope_allow":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":"10de71e0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10de71e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.492399308Z"}]},"request_id":"0ab1435b-948a-4535-ae72-683f512bd872","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8154993} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling 200 9ms","method":"POST","requestID":"10de71e0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Building connection plan","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9003cc0b-44e5-4f4f-8e9f-61050810f338"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"964bc220-ff95-4dee-ad88-94cd7937283b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"aec311e5-d6a0-40f2-87f8-3bc3e4ee1041"}]},"level":"info","message":"Built pairwise service configurations","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80"} device-1 | {"level":"info","message":"GET /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf? 200 18ms","method":"GET","requestID":"cf6c68768ecd8cd88e4576abf8d1ab80","responseTime":18,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.895199,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10e06db0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"10e06db0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0","level":"info","message":"auth send jwt","requestID":"ad25784d1177a03168f1947cce5ab890"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad25784d1177a03168f1947cce5ab890","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad25784d1177a03168f1947cce5ab890"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647135,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ad25784d1177a03168f1947cce5ab890","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752311,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxMX0.hTQOfovVtLDvCfpbFG-u_bAjtjT9-LO4zwIXb2JgSt0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad25784d1177a03168f1947cce5ab890","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"42ff2715-da4b-4fc9-bd87-38e2ecfbce45","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8365796} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da72bf9f-6727-49ee-8240-5bb0a6caf7c8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8367743} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"10e06db0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:49.544333549Z"}]},"request_id":"fe52f996-b855-41e6-bacc-585b751a6a14","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8376222} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad25784d1177a03168f1947cce5ab890","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad25784d1177a03168f1947cce5ab890"} device-1 | {"level":"info","message":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? 200 14ms","method":"GET","requestID":"ad25784d1177a03168f1947cce5ab890","responseTime":14,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b22aec71-0f53-4814-b33e-74b1f4a19124? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad25784d1177a03168f1947cce5ab890"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904'","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904'","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"10e06db0-4911-11ef-863d-25b977f1d961"} 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":"10e06db0-4911-11ef-863d-25b977f1d961","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":"10e06db0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"46e388aca2c9af092b5d63e0dc8cc619"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10e96e60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acac2428-a827-4e96-bf02-1830a9b03571","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.884269} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.070717,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} device-1 | {"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10e96e60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","rebac_allow":false,"scope_allow":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":"10e96e60-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"content":{"canTrickle":true},"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10e96e60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling 200 11ms","method":"POST","requestID":"10e96e60-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10eb6a30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1b01098-516a-498c-8159-bb952cb0f513","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752311.8956623} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342706,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"10eb6a30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","rebac_allow":false,"scope_allow":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":"10eb6a30-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10eb6a30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling 200 10ms","method":"POST","requestID":"10eb6a30-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling"} device-1 | {"device":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1745749793402101478 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:D7mH\r\na=ice-pwd:4lmj2wlRTBDdnC+Z618D8T4H\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BD:60:CC:4E:14:AC:52:BE:92:F4:19:06:21:DB:35:58:10:8E:87:06:4C:6E:65:47:CA:93:D1:00:18:12:6E:EC\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:4047166844 1 udp 2113937151 7c592d8a-7c67-4046-a2f9-ed96245a27c8.local 36274 typ host generation 0 ufrag D7mH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1645313135 1 udp 1677729535 141.24.211.56 36274 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag D7mH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","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/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"27f4e9defbc785ec3f2f9c95c6c817dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"27f4e9defbc785ec3f2f9c95c6c817dc","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/b22aec71-0f53-4814-b33e-74b1f4a19124'"} device-1 | {"device":"b22aec71-0f53-4814-b33e-74b1f4a19124","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":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"}}},"level":"info","message":"received a callback","requestID":"27f4e9defbc785ec3f2f9c95c6c817dc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"27f4e9defbc785ec3f2f9c95c6c817dc","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"27f4e9defbc785ec3f2f9c95c6c817dc"} device-1 | {"data":{"peerconnection":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"b22aec71-0f53-4814-b33e-74b1f4a19124","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/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f1c4aa7b1dff61c7d7a3d337680b3b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0f1c4aa7b1dff61c7d7a3d337680b3b9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"}}},"level":"info","message":"received a callback","requestID":"0f1c4aa7b1dff61c7d7a3d337680b3b9"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"123464f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3b5cf01-6133-4e72-8ae4-af8cc6dc6904","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9eb36032-56c2-4ebb-b402-53e6e497b1e4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.0550463} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.044443,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"123464f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","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":"123464f0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"123464f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904 200 14ms","method":"GET","requestID":"123464f0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"0f1c4aa7b1dff61c7d7a3d337680b3b9","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f1c4aa7b1dff61c7d7a3d337680b3b9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12396e00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa7dd1d1-dbfe-4622-86e1-2a8dc3b15f0d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.0857258} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.767392,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12396e00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","rebac_allow":false,"scope_allow":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":"12396e00-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12396e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling 200 11ms","method":"POST","requestID":"12396e00-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"123b90e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5162948b-d514-4f0e-871e-9aafdd081dcc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.09914} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.928281,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"123b90e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","rebac_allow":false,"scope_allow":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":"123b90e0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"123b90e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling 200 10ms","method":"POST","requestID":"123b90e0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A","level":"info","message":"auth send jwt","requestID":"50fb5365e804fb6291f121bba2d0c00c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"50fb5365e804fb6291f121bba2d0c00c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/92d24175-d9fc-4d39-872c-57458e792108","requestID":"50fb5365e804fb6291f121bba2d0c00c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.356323,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"50fb5365e804fb6291f121bba2d0c00c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752314,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"50fb5365e804fb6291f121bba2d0c00c","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/92d24175-d9fc-4d39-872c-57458e792108","requestID":"50fb5365e804fb6291f121bba2d0c00c"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/92d24175-d9fc-4d39-872c-57458e792108 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50fb5365e804fb6291f121bba2d0c00c"} experiment-1 | {"level":"info","message":"GET /experiments/92d24175-d9fc-4d39-872c-57458e792108 200 20ms","method":"GET","requestID":"50fb5365e804fb6291f121bba2d0c00c","responseTime":20,"status":200,"url":"/experiments/92d24175-d9fc-4d39-872c-57458e792108"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A","level":"info","message":"auth send jwt","requestID":"fbe930331b453217be05fde2f67ed5ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fbe930331b453217be05fde2f67ed5ab","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/92d24175-d9fc-4d39-872c-57458e792108","requestID":"fbe930331b453217be05fde2f67ed5ab"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.827643,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fbe930331b453217be05fde2f67ed5ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752314,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fbe930331b453217be05fde2f67ed5ab","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Attempting to finish experiment","requestID":"fbe930331b453217be05fde2f67ed5ab"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"125c5f50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.248145,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"125c5f50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752314,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"125c5f50-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","device":"b22aec71-0f53-4814-b33e-74b1f4a19124","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c6fb3019-fb82-414d-a832-f1c48865dfcf","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3b5cf01-6133-4e72-8ae4-af8cc6dc6904","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3b5cf01-6133-4e72-8ae4-af8cc6dc6904': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3b5cf01-6133-4e72-8ae4-af8cc6dc6904","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"571f4fd6-1e2c-4f90-86ab-946b6ea0df32","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.329917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa4bfd20-bcb5-4afb-8857-05777ceba669","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.3303103} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1e731b4df9138bfa758150b270c61e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c1e731b4df9138bfa758150b270c61e0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fce06512716b792944e823992dfdecc4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 9ms","method":"POST","requestID":"125c5f50-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"}}},"level":"info","message":"received a callback","requestID":"c1e731b4df9138bfa758150b270c61e0"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fce06512716b792944e823992dfdecc4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"}}},"level":"info","message":"received a callback","requestID":"fce06512716b792944e823992dfdecc4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"125c5f50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904 204 41ms","method":"DELETE","requestID":"125c5f50-4911-11ef-863d-25b977f1d961","responseTime":41,"status":204,"url":"/peerconnections/f3b5cf01-6133-4e72-8ae4-af8cc6dc6904"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92d24175-d9fc-4d39-872c-57458e792108"},"level":"info","message":"Successfully finished experiment","requestID":"fbe930331b453217be05fde2f67ed5ab"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1265d530-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb22aec71-0f53-4814-b33e-74b1f4a19124","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d75b549-1902-48c4-a8e9-bbc5d1e5a31f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.3767815} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.07844,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1265d530-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124","object_type":"device","rebac_allow":false,"scope_allow":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":"1265d530-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1265d530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling 200 11ms","method":"POST","requestID":"1265d530-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/b22aec71-0f53-4814-b33e-74b1f4a19124/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92d24175-d9fc-4d39-872c-57458e792108': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92d24175-d9fc-4d39-872c-57458e792108","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"e5bca3ad-f113-4270-9b36-addf46f20802","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.383658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4f11c2d-235a-4c33-af86-788f5197961e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.3840268} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1267f810-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"fbe930331b453217be05fde2f67ed5ab","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6fb3019-fb82-414d-a832-f1c48865dfcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aab211de-db58-4a1a-a9d9-9cb9df150072","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.3914418} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.014683,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1267f810-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf","object_type":"device","rebac_allow":false,"scope_allow":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":"1267f810-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1267f810-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling 200 12ms","method":"POST","requestID":"1267f810-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/92d24175-d9fc-4d39-872c-57458e792108","requestID":"fbe930331b453217be05fde2f67ed5ab"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/92d24175-d9fc-4d39-872c-57458e792108 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":"fbe930331b453217be05fde2f67ed5ab"} experiment-1 | {"level":"info","message":"DELETE /experiments/92d24175-d9fc-4d39-872c-57458e792108 204 160ms","method":"DELETE","requestID":"fbe930331b453217be05fde2f67ed5ab","responseTime":160,"status":204,"url":"/experiments/92d24175-d9fc-4d39-872c-57458e792108"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2582","request_time":"4.360","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"58b1dd997443af929aeab0e07f1f322f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"c1e731b4df9138bfa758150b270c61e0","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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":"c1e731b4df9138bfa758150b270c61e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"fce06512716b792944e823992dfdecc4","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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":"fce06512716b792944e823992dfdecc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A","level":"info","message":"auth send jwt","requestID":"54b82c59635cea4b4100fb28a6ec1f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"54b82c59635cea4b4100fb28a6ec1f7a"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.903","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b288e22eb4265dc1fda64439582f61b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.24674,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c6fb3019-fb82-414d-a832-f1c48865dfcf' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"54b82c59635cea4b4100fb28a6ec1f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752314,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b22aec71-0f53-4814-b33e-74b1f4a19124' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"89bf7498-4371-42c7-82a2-838f0c902a03","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.4778292} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f1ee009-617a-4c7a-8ab1-0a65652c8b6d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.483124} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"267bd8dc-31cf-4bd7-888f-74c37159dadf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.4931462} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1761dfe-e6e0-49b4-90f7-977667327ce0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.4934888} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"4c43e429-7ad1-4acd-895a-04aec0c2e9bd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.4982162} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"54b82c59635cea4b4100fb28a6ec1f7a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"54b82c59635cea4b4100fb28a6ec1f7a","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54b82c59635cea4b4100fb28a6ec1f7a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A","level":"info","message":"auth send jwt","requestID":"cefab818d4c512cd9e87cbff45e2ef79"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cefab818d4c512cd9e87cbff45e2ef79","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cefab818d4c512cd9e87cbff45e2ef79"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.747562,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cefab818d4c512cd9e87cbff45e2ef79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752314,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNH0.kET1x5gbSe8UEOp4xoylq5yhixmU3fAVu4ayb_QEq8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bc8fcc1a-6487-45c7-8d02-42e8976a36e7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.522636} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"197344a9-02a7-4fe7-b4bf-c44c23ff2cb3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.5275397} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"ec10659e-f6e1-4e62-a7c7-61d6777a18d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.5430129} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54bb3d58-503e-4583-9425-a80e209334fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.5433424} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"933a3042-3bc5-40ba-874e-d320e73d9d63","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752314.5477998} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cefab818d4c512cd9e87cbff45e2ef79"} gateway-1 | {"time_local":"23/Jul/2024:16:31:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cefab818d4c512cd9e87cbff45e2ef79"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"cefab818d4c512cd9e87cbff45e2ef79","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"a01397892f2d16fbf4a30f683e67d572"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a01397892f2d16fbf4a30f683e67d572","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"ea07488f8c6b0d026492b0c7f5a08b50"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a01397892f2d16fbf4a30f683e67d572"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ea07488f8c6b0d026492b0c7f5a08b50"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658688,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a01397892f2d16fbf4a30f683e67d572","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a01397892f2d16fbf4a30f683e67d572","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945351,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ea07488f8c6b0d026492b0c7f5a08b50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"433ae439-2730-4277-bdf2-839a34f349e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.043271} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a01397892f2d16fbf4a30f683e67d572","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"ad85ac1d-656b-40c1-8c46-e085b4791b3b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.0441663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e8eee89-ed4e-42bb-8794-315381c78b0a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.0496082} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a01397892f2d16fbf4a30f683e67d572","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2da6b87-810e-430b-8fe6-e2c6f40f0ed4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.051442} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"dddb96e8-0b21-496d-a02c-68dc4b213d5a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.0564978} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ea07488f8c6b0d026492b0c7f5a08b50"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/69137a57-6712-4177-bc52-5b024a74b317 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ea07488f8c6b0d026492b0c7f5a08b50"} device-1 | {"level":"info","message":"PATCH /devices/69137a57-6712-4177-bc52-5b024a74b317 200 29ms","method":"PATCH","requestID":"ea07488f8c6b0d026492b0c7f5a08b50","responseTime":29,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"d46e2895b6f33f6662db45a2e64663c5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d46e2895b6f33f6662db45a2e64663c5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d46e2895b6f33f6662db45a2e64663c5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"1af7b493-ec27-4369-9419-7b4c6d35f295","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.0672765} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a01397892f2d16fbf4a30f683e67d572","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651838,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a01397892f2d16fbf4a30f683e67d572"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d46e2895b6f33f6662db45a2e64663c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/653017af-27f4-4f9c-9926-446e121311d1 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a01397892f2d16fbf4a30f683e67d572"} device-1 | {"level":"info","message":"PATCH /devices/653017af-27f4-4f9c-9926-446e121311d1 200 43ms","method":"PATCH","requestID":"a01397892f2d16fbf4a30f683e67d572","responseTime":43,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d46e2895b6f33f6662db45a2e64663c5","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"1075c6409b4e54f98905424415b9e555"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1075c6409b4e54f98905424415b9e555","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1075c6409b4e54f98905424415b9e555"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.892047,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1075c6409b4e54f98905424415b9e555","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1075c6409b4e54f98905424415b9e555","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d46e2895b6f33f6662db45a2e64663c5"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d46e2895b6f33f6662db45a2e64663c5"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/websocket 200 18ms","method":"POST","requestID":"d46e2895b6f33f6662db45a2e64663c5","responseTime":18,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1075c6409b4e54f98905424415b9e555"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1075c6409b4e54f98905424415b9e555"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/websocket 200 16ms","method":"POST","requestID":"1075c6409b4e54f98905424415b9e555","responseTime":16,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"aeb324c1ca09c411c13bade0ce56fa76"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"aeb324c1ca09c411c13bade0ce56fa76","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aeb324c1ca09c411c13bade0ce56fa76"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827243,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"aeb324c1ca09c411c13bade0ce56fa76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aeb324c1ca09c411c13bade0ce56fa76","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"36f9f663-6d9c-434a-b3b4-e26068e0a93f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.1266232} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aeb324c1ca09c411c13bade0ce56fa76","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aeb324c1ca09c411c13bade0ce56fa76"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aeb324c1ca09c411c13bade0ce56fa76"} device-1 | {"level":"info","message":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? 200 13ms","method":"GET","requestID":"aeb324c1ca09c411c13bade0ce56fa76","responseTime":13,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"9b87fa817efdc6710676103ce42f4ddf"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9b87fa817efdc6710676103ce42f4ddf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b87fa817efdc6710676103ce42f4ddf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.092296,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9b87fa817efdc6710676103ce42f4ddf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b87fa817efdc6710676103ce42f4ddf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"856d0acc-faf2-4411-ad9c-f5429b606e4a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.1485088} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b87fa817efdc6710676103ce42f4ddf","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b87fa817efdc6710676103ce42f4ddf"} device-1 | {"level":"info","message":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? 200 18ms","method":"GET","requestID":"9b87fa817efdc6710676103ce42f4ddf","responseTime":18,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b87fa817efdc6710676103ce42f4ddf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"490ca3133219bda15433346f036157fb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"490ca3133219bda15433346f036157fb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"490ca3133219bda15433346f036157fb"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.671,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"490ca3133219bda15433346f036157fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"490ca3133219bda15433346f036157fb","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to run experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to book experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully booked experiment","requestID":"490ca3133219bda15433346f036157fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12e34290-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12e390b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086119,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12e34290-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"12e34290-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926393,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12e390b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12e390b0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"70c704f9-f442-46cc-9011-f62555e6766e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2067518} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12e34290-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"89702317-60e2-46b5-812d-f342c7bd7792","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2074902} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12e390b0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12e34290-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? 200 19ms","method":"GET","requestID":"12e34290-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12e390b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? 200 18ms","method":"GET","requestID":"12e390b0-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Setting up experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully locked booking for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to update booking for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully updated booking for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully set up experiment","requestID":"490ca3133219bda15433346f036157fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12edf0f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12ee1800-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12ee6620-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.495038,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully running experiment","requestID":"490ca3133219bda15433346f036157fb"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12edf0f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"12edf0f0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621222,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40646","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12ee1800-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12ee1800-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5453a84d-b9c8-4f06-9aaa-e90d3f2f08ba","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.273601} authorization-1 | {"client_addr":"127.0.0.1:40646","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.630856,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12ee6620-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","rebac_allow":false,"scope_allow":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":"12ee6620-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"f43905e8-6f85-4021-8225-3093c9937b25","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2766907} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"cc51da85-6096-469a-a270-766f0ed474e7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.278653} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"12edf0f0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"12ee1800-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12ee6620-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/signaling 200 19ms","method":"POST","requestID":"12ee6620-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12edf0f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? 200 23ms","method":"GET","requestID":"12edf0f0-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12ee1800-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? 200 23ms","method":"GET","requestID":"12ee1800-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12f1c180-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12f1e890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.370189,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44005bfb-110b-4965-984b-a5340f40d082","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2921188} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fca6ff6c7-9086-4b54-b548-487eebfb5930#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fca6ff6c7-9086-4b54-b548-487eebfb5930","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b4693f88-02ba-4fc6-b1e8-2b3ef5b6d061","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2922332} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a553e01-0f16-4c8e-87d2-11823b9a817d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2924695} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12f1c180-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","rebac_allow":false,"scope_allow":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":"12f1c180-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"490ca3133219bda15433346f036157fb","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.625563,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8a443ab-b301-4f61-9cc1-ba054d0d6e5a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.2964075} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12f1e890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","rebac_allow":false,"scope_allow":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":"12f1e890-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12f1c180-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/signaling 200 12ms","method":"POST","requestID":"12f1c180-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12f1e890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/signaling 200 13ms","method":"POST","requestID":"12f1e890-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"490ca3133219bda15433346f036157fb"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"490ca3133219bda15433346f036157fb","responseTime":145,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12f480a0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"66e45e9156dfda08e2ce0cd811dd2d92"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"66e45e9156dfda08e2ce0cd811dd2d92","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"66e45e9156dfda08e2ce0cd811dd2d92"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e38aed6-c492-482b-a3fb-d0f0cf49cd4c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.3113284} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.418869,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12f480a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","rebac_allow":false,"scope_allow":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":"12f480a0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984351,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"66e45e9156dfda08e2ce0cd811dd2d92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"66e45e9156dfda08e2ce0cd811dd2d92","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12f480a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/signaling 200 11ms","method":"POST","requestID":"12f480a0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.493127181Z"}]},"request_id":"5daed88a-aa9e-47ce-b514-d8bf6c86668d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.3180854} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Building connection plan","requestID":"490ca3133219bda15433346f036157fb"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"6e6dba0f-40ef-40a0-b5bb-3324494ab48e"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"4064f008-1496-4a10-9ace-f1af437060ea"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"f4d3beb3-2a61-4010-b8ae-268f1063649b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"490ca3133219bda15433346f036157fb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"66e45e9156dfda08e2ce0cd811dd2d92","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"490ca3133219bda15433346f036157fb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"66e45e9156dfda08e2ce0cd811dd2d92"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"66e45e9156dfda08e2ce0cd811dd2d92"} device-1 | {"level":"info","message":"GET /devices/653017af-27f4-4f9c-9926-446e121311d1? 200 16ms","method":"GET","requestID":"66e45e9156dfda08e2ce0cd811dd2d92","responseTime":16,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.754915,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12f6ca90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY","level":"info","message":"auth send jwt","requestID":"e8720199c3a0f59a00f7577916ab1506"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8720199c3a0f59a00f7577916ab1506","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8720199c3a0f59a00f7577916ab1506"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986571,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e8720199c3a0f59a00f7577916ab1506","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752315,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxNX0.fCQvbwgL9zdlgnIbRUdjacWIHi2opjjVJFsO8HoSOTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8720199c3a0f59a00f7577916ab1506","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c343e229-0fec-4d88-9c54-f1023b83fe2c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.334845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b10ef20-6cff-4b7e-9312-388bd2046195","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.3350637} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:54.542995036Z"}]},"request_id":"bf0153c2-78e5-474f-9f64-1a306dc7a223","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.33877} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e8720199c3a0f59a00f7577916ab1506","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc'","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc'","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} 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":"12f6ca90-4911-11ef-863d-25b977f1d961","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8720199c3a0f59a00f7577916ab1506"} device-1 | {"level":"info","message":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? 200 21ms","method":"GET","requestID":"e8720199c3a0f59a00f7577916ab1506","responseTime":21,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317?"} gateway-1 | {"time_local":"23/Jul/2024:16:31:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69137a57-6712-4177-bc52-5b024a74b317? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8720199c3a0f59a00f7577916ab1506"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"12f6ca90-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"490ca3133219bda15433346f036157fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12ffa430-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b233580-afb1-4d8c-bc4f-e46d9b82c7cb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.3840938} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356209,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"12ffa430-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","rebac_allow":false,"scope_allow":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":"12ffa430-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12ffa430-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/signaling 200 8ms","method":"POST","requestID":"12ffa430-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"130151e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3faece48-d776-49c9-9e61-0766ba0ec69a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752315.3939476} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.219044,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"130151e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","rebac_allow":false,"scope_allow":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":"130151e0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"130151e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/signaling 200 7ms","method":"POST","requestID":"130151e0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/signaling"} device-1 | {"device":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/00ba2603-3849-4e19-9a9a-0e2119e1ecfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf792623fb72e35fc9fb690e5d2bac2a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"cf792623fb72e35fc9fb690e5d2bac2a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"}}},"level":"info","message":"received a callback","requestID":"cf792623fb72e35fc9fb690e5d2bac2a"} device-1 | {"device":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 8ms","method":"POST","requestID":"cf792623fb72e35fc9fb690e5d2bac2a","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf792623fb72e35fc9fb690e5d2bac2a"} device-1 | {"data":{"peerconnection":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","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/00ba2603-3849-4e19-9a9a-0e2119e1ecfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bedb27819a38f5ef1fcb94f1cf1ba89f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"bedb27819a38f5ef1fcb94f1cf1ba89f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"}}},"level":"info","message":"received a callback","requestID":"bedb27819a38f5ef1fcb94f1cf1ba89f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"143f5020-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00ba2603-3849-4e19-9a9a-0e2119e1ecfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef02860a-1090-44a5-9dfb-9e0d1eae26fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.4821992} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.564028,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"143f5020-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc","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":"143f5020-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"143f5020-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc 200 15ms","method":"GET","requestID":"143f5020-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"bedb27819a38f5ef1fcb94f1cf1ba89f","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"bedb27819a38f5ef1fcb94f1cf1ba89f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14448040-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81b202c6-2ee2-42e7-8ac5-122a4ffca44d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.514345} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.48634,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"14448040-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","rebac_allow":false,"scope_allow":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":"14448040-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14448040-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/signaling 200 12ms","method":"POST","requestID":"14448040-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1446a320-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e242e68e-d264-4609-892f-da42061f98b5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.5270863} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.560876,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1446a320-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","rebac_allow":false,"scope_allow":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":"1446a320-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1446a320-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/signaling 200 10ms","method":"POST","requestID":"1446a320-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg","level":"info","message":"auth send jwt","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.240774,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ce0b3a7688c5a0d23325e32aa9f2366d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752317,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d"} experiment-1 | {"level":"info","message":"GET /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930 200 17ms","method":"GET","requestID":"ce0b3a7688c5a0d23325e32aa9f2366d","responseTime":17,"status":200,"url":"/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg","level":"info","message":"auth send jwt","requestID":"d4a4d88eba973d64e379f5fcc3692b74"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d4a4d88eba973d64e379f5fcc3692b74","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","requestID":"d4a4d88eba973d64e379f5fcc3692b74"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.942183,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d4a4d88eba973d64e379f5fcc3692b74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752317,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d4a4d88eba973d64e379f5fcc3692b74","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Attempting to finish experiment","requestID":"d4a4d88eba973d64e379f5fcc3692b74"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1463ef20-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.309462,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1463ef20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752317,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1463ef20-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"69137a57-6712-4177-bc52-5b024a74b317","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"653017af-27f4-4f9c-9926-446e121311d1","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/00ba2603-3849-4e19-9a9a-0e2119e1ecfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00ba2603-3849-4e19-9a9a-0e2119e1ecfc': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F00ba2603-3849-4e19-9a9a-0e2119e1ecfc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"0711ad94-1262-4a8e-b78a-22af1d7475bc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.7390757} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"288f5fb2-95a4-4607-82ae-1f45704b4f1a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.7392964} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4be8017d991619bdec181173386c406","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f4be8017d991619bdec181173386c406","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa2372d9ce6605dbbbc157b79d57da9b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 9ms","method":"POST","requestID":"1463ef20-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"}}},"level":"info","message":"received a callback","requestID":"f4be8017d991619bdec181173386c406"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fa2372d9ce6605dbbbc157b79d57da9b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"}}},"level":"info","message":"received a callback","requestID":"fa2372d9ce6605dbbbc157b79d57da9b"} device-1 | {"data":{"peerconnection":"00ba2603-3849-4e19-9a9a-0e2119e1ecfc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1463ef20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc 204 49ms","method":"DELETE","requestID":"1463ef20-4911-11ef-863d-25b977f1d961","responseTime":49,"status":204,"url":"/peerconnections/00ba2603-3849-4e19-9a9a-0e2119e1ecfc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"},"level":"info","message":"Successfully finished experiment","requestID":"d4a4d88eba973d64e379f5fcc3692b74"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"146ec490-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F653017af-27f4-4f9c-9926-446e121311d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2283b8e7-523d-4c0d-9b7e-90af5b968755","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.7926338} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.312155,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"146ec490-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/653017af-27f4-4f9c-9926-446e121311d1","object_type":"device","rebac_allow":false,"scope_allow":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":"146ec490-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"146ec490-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/653017af-27f4-4f9c-9926-446e121311d1/signaling 200 15ms","method":"POST","requestID":"146ec490-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/653017af-27f4-4f9c-9926-446e121311d1/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fca6ff6c7-9086-4b54-b548-487eebfb5930': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fca6ff6c7-9086-4b54-b548-487eebfb5930","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"7ce879f0-b26c-4d7a-9fb6-79296a68247e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.8004484} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7080b2a1-5dfc-4657-bf6f-c1e80149bad5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.8008} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"d4a4d88eba973d64e379f5fcc3692b74","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"147183b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69137a57-6712-4177-bc52-5b024a74b317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c27cc3e-f91b-496e-81bf-ab66b61931f6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.8101473} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.702789,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"147183b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317","object_type":"device","rebac_allow":false,"scope_allow":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":"147183b0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"147183b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/69137a57-6712-4177-bc52-5b024a74b317/signaling 200 15ms","method":"POST","requestID":"147183b0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/69137a57-6712-4177-bc52-5b024a74b317/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930","requestID":"d4a4d88eba973d64e379f5fcc3692b74"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930 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":"d4a4d88eba973d64e379f5fcc3692b74"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.779","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"39d61f37bedeed15c99c7edf5700efd3"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.789","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cab0144a6e20ce395ef98b40ae54850b"} experiment-1 | {"level":"info","message":"DELETE /experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930 204 178ms","method":"DELETE","requestID":"d4a4d88eba973d64e379f5fcc3692b74","responseTime":178,"status":204,"url":"/experiments/ca6ff6c7-9086-4b54-b548-487eebfb5930"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"f4be8017d991619bdec181173386c406","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4be8017d991619bdec181173386c406"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"fa2372d9ce6605dbbbc157b79d57da9b","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:31: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"fa2372d9ce6605dbbbc157b79d57da9b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/69137a57-6712-4177-bc52-5b024a74b317' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg","level":"info","message":"auth send jwt","requestID":"51c42474888ca2b193d8b0c8c58b917b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"51c42474888ca2b193d8b0c8c58b917b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"51c42474888ca2b193d8b0c8c58b917b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.232786,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"51c42474888ca2b193d8b0c8c58b917b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752317,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","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/653017af-27f4-4f9c-9926-446e121311d1' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b3f9e673-9cc0-42f7-886e-42886d4cf2fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.901991} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08509b85-e250-4a2f-85fd-739eac4ce8c2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9075563} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"9ef4decd-16de-4b16-8daa-7fa99843e43c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9175708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e246a35-4ee3-48c3-81d1-fe374270f64b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9178772} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.917530640Z"}]},"request_id":"2f873391-6d5b-40a2-97f8-ce1d9a12b7ae","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9232414} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"51c42474888ca2b193d8b0c8c58b917b"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51c42474888ca2b193d8b0c8c58b917b"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"51c42474888ca2b193d8b0c8c58b917b","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg","level":"info","message":"auth send jwt","requestID":"439be6047ffd3e1ecc7c86d29f9105de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"439be6047ffd3e1ecc7c86d29f9105de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"439be6047ffd3e1ecc7c86d29f9105de"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.76509,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"439be6047ffd3e1ecc7c86d29f9105de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752317,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxN30.LxYJxSPrOf_YpRlxgnt_m6c-BQ51qj2fBFwn1AQqfBg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f034f360-afc4-4271-873c-a9e754a39707","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9540777} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a3cdc3f-2999-4731-ba48-c4238212babb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9595418} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"10848b8a-9df8-4fb3-af9e-4ade2a751649","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9702413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41a23daf-e146-4543-b351-a880ab583e51","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9703028} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.970200612Z"}]},"request_id":"8846853b-7051-421a-8026-a8612be29f0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752317.9757457} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"439be6047ffd3e1ecc7c86d29f9105de"} gateway-1 | {"time_local":"23/Jul/2024:16:31:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"439be6047ffd3e1ecc7c86d29f9105de"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"439be6047ffd3e1ecc7c86d29f9105de","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff20a7e88abc633c9f9bdb2b424bed3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ff20a7e88abc633c9f9bdb2b424bed3e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/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":"ff20a7e88abc633c9f9bdb2b424bed3e"} device-1 | {"level":"info","message":"OPTIONS /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/websocket 200 1ms","method":"OPTIONS","requestID":"ff20a7e88abc633c9f9bdb2b424bed3e","responseTime":1,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"45734cb7e75ffa3fb4eee08a8c2da82f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"45734cb7e75ffa3fb4eee08a8c2da82f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:31:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/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":"45734cb7e75ffa3fb4eee08a8c2da82f"} device-1 | {"level":"info","message":"OPTIONS /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/websocket 200 1ms","method":"OPTIONS","requestID":"45734cb7e75ffa3fb4eee08a8c2da82f","responseTime":1,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk","level":"info","message":"auth send jwt","requestID":"0c03bcf83aa924253f2c20840559ee18"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0c03bcf83aa924253f2c20840559ee18","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c03bcf83aa924253f2c20840559ee18"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:59Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk","level":"info","message":"auth send jwt","requestID":"3961c03da139258e2c02502a65f40aa3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3961c03da139258e2c02502a65f40aa3","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.346554,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0c03bcf83aa924253f2c20840559ee18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752319,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3961c03da139258e2c02502a65f40aa3"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c03bcf83aa924253f2c20840559ee18","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.042971,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3961c03da139258e2c02502a65f40aa3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752319,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3961c03da139258e2c02502a65f40aa3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c03bcf83aa924253f2c20840559ee18"} gateway-1 | {"time_local":"23/Jul/2024:16:31:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/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":"0c03bcf83aa924253f2c20840559ee18"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/websocket 200 26ms","method":"POST","requestID":"0c03bcf83aa924253f2c20840559ee18","responseTime":26,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3961c03da139258e2c02502a65f40aa3"} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/websocket 200 31ms","method":"POST","requestID":"3961c03da139258e2c02502a65f40aa3","responseTime":31,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:31:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/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":"3961c03da139258e2c02502a65f40aa3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk","level":"info","message":"auth send jwt","requestID":"c034a517f3d96cc350f3d97ea2f252ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c034a517f3d96cc350f3d97ea2f252ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c034a517f3d96cc350f3d97ea2f252ab"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:31:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.385658,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:31:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c034a517f3d96cc350f3d97ea2f252ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752319,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMxOX0.swBXRo6_UGNgCwPyJ3b-MqqYpJBz3dHcdiAgj69q_Bk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c034a517f3d96cc350f3d97ea2f252ab","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.917530640Z"}]},"request_id":"5caf9423-7e54-470d-82e6-71bc732613da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.0035477} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c034a517f3d96cc350f3d97ea2f252ab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c034a517f3d96cc350f3d97ea2f252ab"} device-1 | {"level":"info","message":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? 200 14ms","method":"GET","requestID":"c034a517f3d96cc350f3d97ea2f252ab","responseTime":14,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c034a517f3d96cc350f3d97ea2f252ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"b085fc05127d0097b862a9be4574802e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b085fc05127d0097b862a9be4574802e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b085fc05127d0097b862a9be4574802e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.403004,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b085fc05127d0097b862a9be4574802e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b085fc05127d0097b862a9be4574802e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.970200612Z"}]},"request_id":"98a8c26c-8450-45f6-ab51-efeb4bf69624","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.026578} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b085fc05127d0097b862a9be4574802e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b085fc05127d0097b862a9be4574802e"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b085fc05127d0097b862a9be4574802e"} device-1 | {"level":"info","message":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? 200 15ms","method":"GET","requestID":"b085fc05127d0097b862a9be4574802e","responseTime":15,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.337488,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to run experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to book experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully booked experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15ce0670-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15ce5490-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.26894,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15ce0670-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15ce0670-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.574625,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15ce5490-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15ce5490-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.917530640Z"}]},"request_id":"5122d56c-3805-4185-a171-ff85dec66a4e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1004827} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"15ce0670-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.970200612Z"}]},"request_id":"0670f671-1830-411a-ab5f-dacc74e6aa1e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1021714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"15ce5490-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15ce0670-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? 200 21ms","method":"GET","requestID":"15ce0670-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15ce5490-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? 200 20ms","method":"GET","requestID":"15ce5490-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Setting up experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully set up experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15da8990-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15dad7b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15db4ce0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923679,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15da8990-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"15da8990-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully running experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944639,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15dad7b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15dad7b0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.386173,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c83b35ab-9543-463f-808a-e005bea41e84","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1808944} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15db4ce0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"15db4ce0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.917530640Z"}]},"request_id":"ed13fb5e-aff1-46c4-9f47-669c640bccb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1831436} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.970200612Z"}]},"request_id":"78f9e8dc-fc2c-4d96-a71f-17c159a5c924","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1849296} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"15da8990-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"15dad7b0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15da8990-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? 200 23ms","method":"GET","requestID":"15da8990-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15db4ce0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling 200 20ms","method":"POST","requestID":"15db4ce0-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15dad7b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? 200 24ms","method":"GET","requestID":"15dad7b0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15dea840-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15def660-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6402b6f-50cd-412e-926c-082fa7107015#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6402b6f-50cd-412e-926c-082fa7107015","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"312b86a8-028d-4c6a-bdf2-59238857279e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.198547} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ce400b6-401a-4995-b3c0-d19526358c6a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.1988} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04d089fa-54ab-4295-8663-5cc13e6ffd14","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2020001} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.776245,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15dea840-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","rebac_allow":false,"scope_allow":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":"15dea840-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43628cec-024e-4e7c-88a6-b6d98b8073da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2067518} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.223337,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15def660-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","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":"15dea840-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15def660-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling 200 13ms","method":"POST","requestID":"15dea840-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946","responseTime":174,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15def660-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling 200 17ms","method":"POST","requestID":"15def660-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15e1dc90-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"56b3cf7a870db47e6805c281f58a8fb8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"56b3cf7a870db47e6805c281f58a8fb8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56b3cf7a870db47e6805c281f58a8fb8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9bc1c852-9190-47a6-b5fa-37286bfd29b2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2231662} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.261526,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15e1dc90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","rebac_allow":false,"scope_allow":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":"15e1dc90-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.420161,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"56b3cf7a870db47e6805c281f58a8fb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"56b3cf7a870db47e6805c281f58a8fb8","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15e1dc90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling 200 15ms","method":"POST","requestID":"15e1dc90-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.917530640Z"}]},"request_id":"34031654-a96b-431a-9720-d441defd9f8c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2322505} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Building connection plan","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56b3cf7a870db47e6805c281f58a8fb8","responseTime":3,"status":200,"url":"/relations/query"} 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":"2c47f9e7-8427-46cf-a0ba-165e34d8230a"},{"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":"eaeb9a35-ed11-4b0e-8cc8-cfb911ccf637"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ebb23098-4610-46d1-a51c-777d1d8a04ae"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56b3cf7a870db47e6805c281f58a8fb8"} device-1 | {"level":"info","message":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? 200 20ms","method":"GET","requestID":"56b3cf7a870db47e6805c281f58a8fb8","responseTime":20,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56b3cf7a870db47e6805c281f58a8fb8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.371696,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343593,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8e246a99-53d7-4c28-959c-08d9567d08d0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.255491} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"569102fe-96f4-4979-b380-5f1ea1cefa87","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2558267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:31:57.970200612Z"}]},"request_id":"404c55ba-5e0e-4dab-bfaa-070a67f2181a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.2566333} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4"} device-1 | {"level":"info","message":"GET /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f? 200 17ms","method":"GET","requestID":"e45ceb20b98e3b26b9a62ddd696a3ae4","responseTime":17,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df'","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df'","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 41ms","method":"POST","requestID":"15e4c2c0-4911-11ef-863d-25b977f1d961","responseTime":41,"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":"15e4c2c0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7a905c73a89d1aa3f1b29f8b2b4bc946"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15ef9830-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eed688c9-5c05-45a4-b472-1d3d27a407c6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.311776} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.101122,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15ef9830-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"15ef9830-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15ef9830-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling 200 9ms","method":"POST","requestID":"15ef9830-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15f145e0-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54e57deb-575e-40f2-95c2-7bacaf34c219","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.3236384} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.2769,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15f145e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","rebac_allow":false,"scope_allow":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":"15f145e0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15f145e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling 200 10ms","method":"POST","requestID":"15f145e0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling"} device-1 | {"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5381159034222080294 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:t8c+\r\na=ice-pwd:RmtM1nl9IyJG4Zyms2Ne5G/W\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5E:A5:20:75:23:F5:D7:06:2F:4E:0C:98:54:C2:E9:E6:AE:FF:C9:99:7B:8F:01:97:A9:59:B7:C1:13:14:BD:3A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7482605998149996037 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:bdQ/\r\na=ice-pwd:wW8dCNlE5sQ15BxP2oPv2J+l\r\na=ice-options:trickle\r\na=fingerprint:sha-256 64:2C:6C:41:96:7B:1E:26:14:2D:F0:77:47:96:C3:97:2A:87:73:58:0B:5A:D8:DE:BC:AB:ED:4F:FC:4C:14:4C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1138992890 1 udp 2113937151 f3a7c556-d042-4128-bb7b-01dcf37f41f4.local 60352 typ host generation 0 ufrag bdQ/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","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/5d37e87b-3a9a-4074-a3dc-c6ebd511074f'"} device-1 | {"content":{"candidate":"candidate:3502770153 1 udp 1677729535 141.24.211.56 60352 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bdQ/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","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/5d37e87b-3a9a-4074-a3dc-c6ebd511074f'"} device-1 | {"content":{"candidate":"candidate:3216516845 1 udp 2113937151 3502cb2b-f856-471d-85e0-601b5a1709ae.local 54428 typ host generation 0 ufrag t8c+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:747866110 1 udp 1677729535 141.24.211.56 54428 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag t8c+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","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/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b'"} device-1 | {"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","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/cc36a68b-9a64-4def-bfc1-3a6e144129df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"edb75bf34665742375eae2bb01064ca9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"edb75bf34665742375eae2bb01064ca9","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","deviceName":"JS Device 1","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":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"}}},"level":"info","message":"received a callback","requestID":"edb75bf34665742375eae2bb01064ca9"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"edb75bf34665742375eae2bb01064ca9"} device-1 | {"device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"edb75bf34665742375eae2bb01064ca9","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","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/cc36a68b-9a64-4def-bfc1-3a6e144129df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3975e485a610026abbfb1fdaf35b3f4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3975e485a610026abbfb1fdaf35b3f4b","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"}}},"level":"info","message":"received a callback","requestID":"3975e485a610026abbfb1fdaf35b3f4b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"15fc9080-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc36a68b-9a64-4def-bfc1-3a6e144129df","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f355a70e-5134-4fd8-8576-e1cf98d4f09d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.396602} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.051309,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15fc9080-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","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":"15fc9080-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"15fc9080-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df 200 8ms","method":"GET","requestID":"15fc9080-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"3975e485a610026abbfb1fdaf35b3f4b","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"3975e485a610026abbfb1fdaf35b3f4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1600d640-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c45e4492-6ae9-426f-8983-dc1a3de71394","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.4246342} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.146118,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1600d640-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","rebac_allow":false,"scope_allow":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":"1600d640-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1600d640-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling 200 9ms","method":"POST","requestID":"1600d640-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"160283f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73610e77-8044-4184-9436-1f3ed40ba365","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.4352193} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.217162,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"160283f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"160283f0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"160283f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling 200 8ms","method":"POST","requestID":"160283f0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b6402b6f-50cd-412e-926c-082fa7107015","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.179313,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b6402b6f-50cd-412e-926c-082fa7107015","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b6402b6f-50cd-412e-926c-082fa7107015 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c"} experiment-1 | {"level":"info","message":"GET /experiments/b6402b6f-50cd-412e-926c-082fa7107015 200 12ms","method":"GET","requestID":"0f13f46b4962e14ec0b7ddd3314ddb4c","responseTime":12,"status":200,"url":"/experiments/b6402b6f-50cd-412e-926c-082fa7107015"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"8d0216328fdfe933d9253b0661df1e40"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8d0216328fdfe933d9253b0661df1e40","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b6402b6f-50cd-412e-926c-082fa7107015","requestID":"8d0216328fdfe933d9253b0661df1e40"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.210565,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8d0216328fdfe933d9253b0661df1e40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d0216328fdfe933d9253b0661df1e40","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Attempting to finish experiment","requestID":"8d0216328fdfe933d9253b0661df1e40"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"160d5960-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.791496,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"160d5960-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"160d5960-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","device":"5d37e87b-3a9a-4074-a3dc-c6ebd511074f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df","device":"85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","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/cc36a68b-9a64-4def-bfc1-3a6e144129df' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc36a68b-9a64-4def-bfc1-3a6e144129df': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc36a68b-9a64-4def-bfc1-3a6e144129df","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"aaf178f3-618f-45cf-847d-875342ff4ec9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.522676} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d0a171c-0c38-4c71-99c9-bdc1097b0faa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.5230014} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5fe293ec174cc82c9b233a0bf389b609","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5fe293ec174cc82c9b233a0bf389b609","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"160d5960-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1476b4e8c933773eb23a34d4a885001e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"}}},"level":"info","message":"received a callback","requestID":"5fe293ec174cc82c9b233a0bf389b609"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1476b4e8c933773eb23a34d4a885001e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"}}},"level":"info","message":"received a callback","requestID":"1476b4e8c933773eb23a34d4a885001e"} device-1 | {"data":{"peerconnection":"cc36a68b-9a64-4def-bfc1-3a6e144129df","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"160d5960-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df 204 40ms","method":"DELETE","requestID":"160d5960-4911-11ef-863d-25b977f1d961","responseTime":40,"status":204,"url":"/peerconnections/cc36a68b-9a64-4def-bfc1-3a6e144129df"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6402b6f-50cd-412e-926c-082fa7107015"},"level":"info","message":"Successfully finished experiment","requestID":"8d0216328fdfe933d9253b0661df1e40"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1615e4e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d37e87b-3a9a-4074-a3dc-c6ebd511074f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e15015df-2592-42dd-b690-ba4873189fd7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.5663986} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.510196,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1615e4e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f","object_type":"device","rebac_allow":false,"scope_allow":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":"1615e4e0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1615e4e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6402b6f-50cd-412e-926c-082fa7107015': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6402b6f-50cd-412e-926c-082fa7107015","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"0b20b148-3efa-423b-b0b6-6cac09195aed","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.572633} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e70c8f2a-c874-4b31-9b7b-e322432c176a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.5728765} device-1 | {"level":"info","message":"POST /devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling 200 15ms","method":"POST","requestID":"1615e4e0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"8d0216328fdfe933d9253b0661df1e40","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16187cf0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db909f15-b1ca-41f6-9c73-811e4f2b283f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.5825038} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.429842,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"16187cf0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b","object_type":"device","rebac_allow":false,"scope_allow":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":"16187cf0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16187cf0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling 200 14ms","method":"POST","requestID":"16187cf0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b6402b6f-50cd-412e-926c-082fa7107015","requestID":"8d0216328fdfe933d9253b0661df1e40"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b6402b6f-50cd-412e-926c-082fa7107015 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":"8d0216328fdfe933d9253b0661df1e40"} experiment-1 | {"level":"info","message":"DELETE /experiments/b6402b6f-50cd-412e-926c-082fa7107015 204 157ms","method":"DELETE","requestID":"8d0216328fdfe933d9253b0661df1e40","responseTime":157,"status":204,"url":"/experiments/b6402b6f-50cd-412e-926c-082fa7107015"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"5fe293ec174cc82c9b233a0bf389b609","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"5fe293ec174cc82c9b233a0bf389b609"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"1476b4e8c933773eb23a34d4a885001e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"1476b4e8c933773eb23a34d4a885001e","responseTime":125,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"7fa14706acaeee41582eb114bccbff21"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7fa14706acaeee41582eb114bccbff21","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7fa14706acaeee41582eb114bccbff21"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.932982,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7fa14706acaeee41582eb114bccbff21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2885","request_time":"0.688","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"401692125b9f9673c1cc9ef7a6057565"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2888","request_time":"0.698","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2c878681007e2d9b73dbcb37a5d2993d"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5d37e87b-3a9a-4074-a3dc-c6ebd511074f' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/85b9b809-0d49-4df5-92e6-1de2d8b7ed9b' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"db2ecc9c-a024-4ea8-a212-99740c427b05","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.6748831} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f312bd0a-6382-441a-b224-6362cc3f312e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.6808574} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"67f08334-e162-49f5-abc6-d6e69786c273","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.6913245} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46006c92-c65b-4615-8555-b45ad0cf8d15","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.6913946} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.691304133Z"}]},"request_id":"4140f2af-ca1f-48dd-8293-26073ddc014d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.6953502} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7fa14706acaeee41582eb114bccbff21"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7fa14706acaeee41582eb114bccbff21"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"7fa14706acaeee41582eb114bccbff21","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw","level":"info","message":"auth send jwt","requestID":"01dbd4d344fd3b8af4c5dee8572766f0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"01dbd4d344fd3b8af4c5dee8572766f0"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.660017,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"01dbd4d344fd3b8af4c5dee8572766f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752320,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMH0.15UDWfLX8CGAjgfxkWJO3s4e_iq-Ch_OsNa-CIecdvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"549ced76-7f56-4c8d-9fd4-abc58719b1e3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.7194335} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f89b985b-44f2-4fa3-9a66-e83d84a9e94e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.7240696} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"3ecb0dc6-dd75-4640-8b79-a287970afba5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.7391803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ec52c9b-51f6-46e5-a3cb-c72604e58682","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.739342} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.739161333Z"}]},"request_id":"dc9450de-6c5d-48b6-a660-296581c63e24","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752320.7429774} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"01dbd4d344fd3b8af4c5dee8572766f0"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"01dbd4d344fd3b8af4c5dee8572766f0","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01dbd4d344fd3b8af4c5dee8572766f0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"47ea80fe920fe30eb9c56a8c8fc99ac8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"47ea80fe920fe30eb9c56a8c8fc99ac8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/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":"47ea80fe920fe30eb9c56a8c8fc99ac8"} device-1 | {"level":"info","message":"OPTIONS /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/websocket 200 2ms","method":"OPTIONS","requestID":"47ea80fe920fe30eb9c56a8c8fc99ac8","responseTime":2,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw","level":"info","message":"auth send jwt","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.389296,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/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":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/websocket 200 23ms","method":"POST","requestID":"e9c2f1c16ce74f31bd5c3e91ca9ba5c0","responseTime":23,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e4fd37ab8c99d815a71ddbc0ecc8cd8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5e4fd37ab8c99d815a71ddbc0ecc8cd8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5318a130-3531-49b5-bc16-c14539b4f709/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":"5e4fd37ab8c99d815a71ddbc0ecc8cd8"} device-1 | {"level":"info","message":"OPTIONS /devices/5318a130-3531-49b5-bc16-c14539b4f709/websocket 200 1ms","method":"OPTIONS","requestID":"5e4fd37ab8c99d815a71ddbc0ecc8cd8","responseTime":1,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw","level":"info","message":"auth send jwt","requestID":"58d2098f8307df5032a269dd37032407"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"58d2098f8307df5032a269dd37032407","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"58d2098f8307df5032a269dd37032407"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251547,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"58d2098f8307df5032a269dd37032407","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58d2098f8307df5032a269dd37032407","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"58d2098f8307df5032a269dd37032407"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/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":"58d2098f8307df5032a269dd37032407"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/websocket 200 28ms","method":"POST","requestID":"58d2098f8307df5032a269dd37032407","responseTime":28,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw","level":"info","message":"auth send jwt","requestID":"832719593132d3f809aed820c39a900e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"832719593132d3f809aed820c39a900e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"832719593132d3f809aed820c39a900e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.885557,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"832719593132d3f809aed820c39a900e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"832719593132d3f809aed820c39a900e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.691304133Z"}]},"request_id":"a8b3646a-3a00-400d-8958-d2091dccd58c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.781025} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"832719593132d3f809aed820c39a900e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"832719593132d3f809aed820c39a900e"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"832719593132d3f809aed820c39a900e"} device-1 | {"level":"info","message":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? 200 26ms","method":"GET","requestID":"832719593132d3f809aed820c39a900e","responseTime":26,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw","level":"info","message":"auth send jwt","requestID":"f587d59262f7f95379d6d522b550dc98"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f587d59262f7f95379d6d522b550dc98","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f587d59262f7f95379d6d522b550dc98"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.627802,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f587d59262f7f95379d6d522b550dc98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f587d59262f7f95379d6d522b550dc98","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.739161333Z"}]},"request_id":"6dd5ba1d-ffea-4222-b1a3-fc5831a32bfd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.8097496} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f587d59262f7f95379d6d522b550dc98","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f587d59262f7f95379d6d522b550dc98"} gateway-1 | {"time_local":"23/Jul/2024:16:32:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f587d59262f7f95379d6d522b550dc98"} device-1 | {"level":"info","message":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? 200 19ms","method":"GET","requestID":"f587d59262f7f95379d6d522b550dc98","responseTime":19,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw","level":"info","message":"auth send jwt","requestID":"c0b4e4f074862f26471aa610330cc597"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c0b4e4f074862f26471aa610330cc597","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c0b4e4f074862f26471aa610330cc597"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.199105,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c0b4e4f074862f26471aa610330cc597","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c0b4e4f074862f26471aa610330cc597","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to run experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to book experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully booked experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1777e5e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17783400-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897398,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1777e5e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1777e5e0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.365505,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17783400-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17783400-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.691304133Z"}]},"request_id":"fd89264d-7b46-4ab4-a0af-9dea7e801dcc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.8920133} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1777e5e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.739161333Z"}]},"request_id":"4ae3d0c8-d772-4b53-a51e-9d11684a1e10","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.8939424} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"17783400-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1777e5e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? 200 21ms","method":"GET","requestID":"1777e5e0-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17783400-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? 200 21ms","method":"GET","requestID":"17783400-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Setting up experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully set up experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"178441f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17849010-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully running experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1784de30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.14362,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.703717,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"178441f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"178441f0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17849010-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"17849010-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41884","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.691304133Z"}]},"request_id":"9476d87c-5e19-40a2-88c8-cf05f84d8c9f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.9785273} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"451d40a6-e204-4442-bf07-bdb0846e5af2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.9786704} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"178441f0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:41884","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.725505,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1784de30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"1784de30-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.739161333Z"}]},"request_id":"092859db-635d-4bf8-94b6-1a726fe29e8c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.9809105} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"17849010-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2ce76fb-8140-48c4-9326-3cf6086b734f#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2ce76fb-8140-48c4-9326-3cf6086b734f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"37beb705-323c-4743-93ab-f053c1f310e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.9912858} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"178441f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? 200 34ms","method":"GET","requestID":"178441f0-4911-11ef-863d-25b977f1d961","responseTime":34,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f7c428d-5437-4d1d-b310-32233a91a4e8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752322.991953} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1784de30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling 200 32ms","method":"POST","requestID":"1784de30-4911-11ef-863d-25b977f1d961","responseTime":32,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"c0b4e4f074862f26471aa610330cc597","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17849010-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? 200 36ms","method":"GET","requestID":"17849010-4911-11ef-863d-25b977f1d961","responseTime":36,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"178a3560-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65cb162c-4328-4867-9461-74c7c10a91a3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.005607} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"178b46d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.946575,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"178a3560-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","rebac_allow":false,"scope_allow":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":"178a3560-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c0b4e4f074862f26471aa610330cc597"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.193","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"level":"info","message":"POST /experiments? 201 187ms","method":"POST","requestID":"c0b4e4f074862f26471aa610330cc597","responseTime":187,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"178a3560-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling 200 14ms","method":"POST","requestID":"178a3560-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d970f34d-eb14-4874-ae72-f9905fc5fdfa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.0128028} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.3365,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"178b46d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","rebac_allow":false,"scope_allow":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":"178b46d0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"178b46d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling 200 15ms","method":"POST","requestID":"178b46d0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985416,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ffdd94ae447fac7d4c6c60e36316bbc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"178e05f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.691304133Z"}]},"request_id":"d7dad3c5-9910-460b-b597-2061f48c1b13","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.0284514} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a914fc6a-3cc1-4a69-96d3-4ff57d98ea19","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.028753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.188568,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"178e05f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","rebac_allow":false,"scope_allow":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":"178e05f0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6"} device-1 | {"level":"info","message":"GET /devices/5318a130-3531-49b5-bc16-c14539b4f709? 200 18ms","method":"GET","requestID":"ffdd94ae447fac7d4c6c60e36316bbc6","responseTime":18,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"178e05f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling 200 13ms","method":"POST","requestID":"178e05f0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Building connection plan","requestID":"c0b4e4f074862f26471aa610330cc597"} 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":"08e8e27b-ea2e-496b-922d-6f847a15ed02"},{"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":"b00710ef-b083-4cb1-894f-d74a501bc0ad"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"2bba1124-80bf-4479-843a-d731b3f83916"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c0b4e4f074862f26471aa610330cc597"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c0b4e4f074862f26471aa610330cc597"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"37057358d90ed6deea4d2354dfda08f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"37057358d90ed6deea4d2354dfda08f3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37057358d90ed6deea4d2354dfda08f3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.87515,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17909e00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752322,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyMn0.SWqjdR2EjvasW479D3tJdXmzh1MtkcLemSQTx01GCMw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17909e00-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.780328,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37057358d90ed6deea4d2354dfda08f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"37057358d90ed6deea4d2354dfda08f3","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:00.739161333Z"}]},"request_id":"1acfa598-6ddd-40b7-b1dc-3d2e8f7c93d9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.0514863} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"37057358d90ed6deea4d2354dfda08f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37057358d90ed6deea4d2354dfda08f3"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37057358d90ed6deea4d2354dfda08f3"} device-1 | {"level":"info","message":"GET /devices/d6251e2f-568c-40b0-8823-6d8121eee98d? 200 14ms","method":"GET","requestID":"37057358d90ed6deea4d2354dfda08f3","responseTime":14,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5b84dc08-fdd7-41bd-b3ff-fb37709de8ed","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.05748} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ef98e9d-dc54-4060-8db2-1522a456a738","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.057781} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"17909e00-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105'","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105'","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"17909e00-4911-11ef-863d-25b977f1d961"} 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":"17909e00-4911-11ef-863d-25b977f1d961","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":"17909e00-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c0b4e4f074862f26471aa610330cc597"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"179977a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"611a8f42-f01b-4507-980d-db8720055cb8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.1032355} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.862845,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"179977a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","rebac_allow":false,"scope_allow":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":"179977a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"179977a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling 200 9ms","method":"POST","requestID":"179977a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"179b4c60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} device-1 | {"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90cd61f5-4a11-4b22-8cca-6cb3eb88892c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.1148925} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.477025,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"179b4c60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","rebac_allow":false,"scope_allow":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":"179b4c60-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"179b4c60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling 200 9ms","method":"POST","requestID":"179b4c60-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling"} device-1 | {"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6230068899028924204 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:UhCy\r\na=ice-pwd:xjJMG0/ogHSs9eGSZfFnD5ua\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:81:D4:DB:CD:73:69:EF:26:C1:29:F1:01:F7:68:C8:1B:1B:B7:04:57:1C:2B:46:65:52:63:CD:E8:3C:F9:F5\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7231762411021722342 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:KuAr\r\na=ice-pwd:2T7yrxILImy2ZJDckt5rbZ+O\r\na=ice-options:trickle\r\na=fingerprint:sha-256 64:E0:15:43:5F:98:9D:8A:83:36:CC:13:AC:76:C1:ED:65:51:1F:A5:55:07:89:DE:D1:BB:88:56:14:B0:C5:1C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:813236673 1 udp 2113937151 9773e892-7cf7-4dc0-9093-ae7b9bec0936.local 39011 typ host generation 0 ufrag KuAr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3025431486 1 udp 1677729535 141.24.211.56 39011 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KuAr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5318a130-3531-49b5-bc16-c14539b4f709","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/5318a130-3531-49b5-bc16-c14539b4f709'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709'"} device-1 | {"content":{"candidate":"candidate:3014857831 1 udp 2113937151 ada4fda1-785f-47c8-b1cd-c4c93defd615.local 56352 typ host generation 0 ufrag UhCy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:546878836 1 udp 1677729535 141.24.211.56 56352 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag UhCy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","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/d6251e2f-568c-40b0-8823-6d8121eee98d'"} device-1 | {"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5318a130-3531-49b5-bc16-c14539b4f709","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/330908fe-faf4-4a88-99f4-701bf66d7105' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"417753cbaee6b85b19fc90efaf2681e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"417753cbaee6b85b19fc90efaf2681e1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"}}},"level":"info","message":"received a callback","requestID":"417753cbaee6b85b19fc90efaf2681e1"} device-1 | {"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d6251e2f-568c-40b0-8823-6d8121eee98d","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":"417753cbaee6b85b19fc90efaf2681e1","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"417753cbaee6b85b19fc90efaf2681e1"} device-1 | {"device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","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/330908fe-faf4-4a88-99f4-701bf66d7105' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93deb5e34beb13a30914e053e84091ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"93deb5e34beb13a30914e053e84091ca","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"}}},"level":"info","message":"received a callback","requestID":"93deb5e34beb13a30914e053e84091ca"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"17a7cf80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F330908fe-faf4-4a88-99f4-701bf66d7105","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7cd654e-9213-4dca-bbd6-89809f834e3b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.1961796} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.260845,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17a7cf80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","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":"17a7cf80-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"17a7cf80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105 200 8ms","method":"GET","requestID":"17a7cf80-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"93deb5e34beb13a30914e053e84091ca","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"93deb5e34beb13a30914e053e84091ca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17abee30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b643b452-813e-4cec-b104-93488eba419b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.2238157} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.196212,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17abee30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","rebac_allow":false,"scope_allow":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":"17abee30-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17abee30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling 200 8ms","method":"POST","requestID":"17abee30-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17ad74d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c64a2482-d466-45b6-a29d-bfe935c0b0dd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.2335005} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.296166,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17ad74d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","rebac_allow":false,"scope_allow":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":"17ad74d0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17ad74d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling 200 8ms","method":"POST","requestID":"17ad74d0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"4f02dcedf1aa2e718226047e886ff3c9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4f02dcedf1aa2e718226047e886ff3c9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","requestID":"4f02dcedf1aa2e718226047e886ff3c9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.626997,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4f02dcedf1aa2e718226047e886ff3c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4f02dcedf1aa2e718226047e886ff3c9","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","requestID":"4f02dcedf1aa2e718226047e886ff3c9"} experiment-1 | {"level":"info","message":"GET /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f 200 13ms","method":"GET","requestID":"4f02dcedf1aa2e718226047e886ff3c9","responseTime":13,"status":200,"url":"/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f02dcedf1aa2e718226047e886ff3c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"45a22307fe0a72860c1411f01f3ffd9b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667674,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"45a22307fe0a72860c1411f01f3ffd9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"45a22307fe0a72860c1411f01f3ffd9b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Attempting to finish experiment","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"17b934a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.038223,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17b934a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"17b934a0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","device":"5318a130-3531-49b5-bc16-c14539b4f709","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105","device":"d6251e2f-568c-40b0-8823-6d8121eee98d","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/330908fe-faf4-4a88-99f4-701bf66d7105' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F330908fe-faf4-4a88-99f4-701bf66d7105': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F330908fe-faf4-4a88-99f4-701bf66d7105","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"22eb8fac-0b98-42d8-adbe-ba214c4ba2a5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.3205705} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6277149495bfe9fb1aea08fcd621faf2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6277149495bfe9fb1aea08fcd621faf2","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8a6e985-d7c7-48eb-bf53-85d4379c703f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.3209324} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"17b934a0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f337f5a5f41f20a905790879b847c83c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"}}},"level":"info","message":"received a callback","requestID":"6277149495bfe9fb1aea08fcd621faf2"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f337f5a5f41f20a905790879b847c83c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"}}},"level":"info","message":"received a callback","requestID":"f337f5a5f41f20a905790879b847c83c"} device-1 | {"data":{"peerconnection":"330908fe-faf4-4a88-99f4-701bf66d7105","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"17b934a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105 204 34ms","method":"DELETE","requestID":"17b934a0-4911-11ef-863d-25b977f1d961","responseTime":34,"status":204,"url":"/peerconnections/330908fe-faf4-4a88-99f4-701bf66d7105"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"},"level":"info","message":"Successfully finished experiment","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17c087a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5318a130-3531-49b5-bc16-c14539b4f709","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbd9e353-2c9e-4f6e-b37c-1bd32bad378f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.360928} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.750307,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17c087a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709","object_type":"device","rebac_allow":false,"scope_allow":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":"17c087a0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17c087a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling 200 11ms","method":"POST","requestID":"17c087a0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/5318a130-3531-49b5-bc16-c14539b4f709/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17c28370-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2ce76fb-8140-48c4-9326-3cf6086b734f': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2ce76fb-8140-48c4-9326-3cf6086b734f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"c552f0c3-44a3-463a-b52e-4b5044431f63","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.3697524} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7376231-f6a4-43d3-8d53-e4aa59b37b8e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.3699164} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"45a22307fe0a72860c1411f01f3ffd9b","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd6251e2f-568c-40b0-8823-6d8121eee98d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f02ac54-483f-4087-99ce-7879e0521f1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.3723373} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.46197,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"17c28370-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d6251e2f-568c-40b0-8823-6d8121eee98d","object_type":"device","rebac_allow":false,"scope_allow":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":"17c28370-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17c28370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling 200 9ms","method":"POST","requestID":"17c28370-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/d6251e2f-568c-40b0-8823-6d8121eee98d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45a22307fe0a72860c1411f01f3ffd9b"} experiment-1 | {"level":"info","message":"DELETE /experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f 204 138ms","method":"DELETE","requestID":"45a22307fe0a72860c1411f01f3ffd9b","responseTime":138,"status":204,"url":"/experiments/c2ce76fb-8140-48c4-9326-3cf6086b734f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"6277149495bfe9fb1aea08fcd621faf2","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"6277149495bfe9fb1aea08fcd621faf2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"19bc32ace6b75309acb773549942246f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"f337f5a5f41f20a905790879b847c83c","responseTime":114,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"19bc32ace6b75309acb773549942246f","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"f337f5a5f41f20a905790879b847c83c"} device-1 | {"level":"info","message":"postDevices called","requestID":"19bc32ace6b75309acb773549942246f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2887","request_time":"0.700","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1e4d8a41e0083de86a86c7449980a343"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2885","request_time":"0.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":"4a02892c4275c90f4915cebe4d12d984"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872669,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5318a130-3531-49b5-bc16-c14539b4f709' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"19bc32ace6b75309acb773549942246f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","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/d6251e2f-568c-40b0-8823-6d8121eee98d' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9dc7ba73-d3ee-4c7e-b826-6cb57527fb4f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.4661703} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5133c7d3-214f-4a60-9b92-e2136a2b9af7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.470373} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"640c95b4-13ef-4e81-9a66-f309e10925ce","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.4817486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"daa7ef1e-b6dc-43c1-9a71-4cbe0f9cfe31","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.4819238} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.481721217Z"}]},"request_id":"f98c41f3-acdb-45b6-a87d-dd3222806c07","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.485214} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"19bc32ace6b75309acb773549942246f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19bc32ace6b75309acb773549942246f"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"19bc32ace6b75309acb773549942246f","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E","level":"info","message":"auth send jwt","requestID":"795a958ba7e139e07185643de2bcc892"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"795a958ba7e139e07185643de2bcc892","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"795a958ba7e139e07185643de2bcc892"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.734064,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"795a958ba7e139e07185643de2bcc892","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752323,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyM30.SXPU2sguTXitJLbWICrAUaOJ2IFnfvBM2B1l5jMJP6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"26f69192-47d1-4a50-bc9e-8c5b22fc1d57","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.5089414} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f9b4c7c-1ec5-43f8-8570-1b3f409a02ef","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.5132813} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8f1a463c-3b3a-40d8-9479-0e7dfc04105c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.5299149} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e31518e2-f56a-47e8-8e9e-777350da16d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.5301664} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"1a3daf3d-9f44-4ba6-8cb3-b6266e32433b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752323.5341036} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"795a958ba7e139e07185643de2bcc892"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"795a958ba7e139e07185643de2bcc892","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"795a958ba7e139e07185643de2bcc892"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNH0.94nFJlSZnI1cYgcGRnMc0CBLNBlmoyupTeSPpUdfDKc","level":"info","message":"auth send jwt","requestID":"e7d812dd30d297cfb60761af346390a8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e7d812dd30d297cfb60761af346390a8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e7d812dd30d297cfb60761af346390a8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:04Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.842903,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e7d812dd30d297cfb60761af346390a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752324,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNH0.94nFJlSZnI1cYgcGRnMc0CBLNBlmoyupTeSPpUdfDKc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7d812dd30d297cfb60761af346390a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"a981a004-2b0f-4273-9e52-8b9704200362","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752324.033873} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e7d812dd30d297cfb60761af346390a8","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e39592f-7c6b-4c64-9d56-b4b5898c8aab","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752324.0401316} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e7d812dd30d297cfb60761af346390a8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"4e629cbc-1107-446e-bc20-567f019d5bac","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752324.0515952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7d812dd30d297cfb60761af346390a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e7d812dd30d297cfb60761af346390a8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e7d812dd30d297cfb60761af346390a8"} device-1 | {"level":"info","message":"PATCH /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b 200 34ms","method":"PATCH","requestID":"e7d812dd30d297cfb60761af346390a8","responseTime":34,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNH0.94nFJlSZnI1cYgcGRnMc0CBLNBlmoyupTeSPpUdfDKc","level":"info","message":"auth send jwt","requestID":"bdf7f5f681ee70bfe185e631f5292760"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bdf7f5f681ee70bfe185e631f5292760","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bdf7f5f681ee70bfe185e631f5292760"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:04Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.445412,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bdf7f5f681ee70bfe185e631f5292760","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752324,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNH0.94nFJlSZnI1cYgcGRnMc0CBLNBlmoyupTeSPpUdfDKc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bdf7f5f681ee70bfe185e631f5292760","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bdf7f5f681ee70bfe185e631f5292760"} gateway-1 | {"time_local":"23/Jul/2024:16:32:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bdf7f5f681ee70bfe185e631f5292760"} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/websocket 200 24ms","method":"POST","requestID":"bdf7f5f681ee70bfe185e631f5292760","responseTime":24,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"46555880d1368814bc1168fe77e4eae1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"46555880d1368814bc1168fe77e4eae1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/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":"46555880d1368814bc1168fe77e4eae1"} device-1 | {"level":"info","message":"OPTIONS /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/websocket 200 1ms","method":"OPTIONS","requestID":"46555880d1368814bc1168fe77e4eae1","responseTime":1,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"ed86ce2706271f35575883bf46f90ddc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ed86ce2706271f35575883bf46f90ddc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ed86ce2706271f35575883bf46f90ddc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.445848,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ed86ce2706271f35575883bf46f90ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed86ce2706271f35575883bf46f90ddc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ed86ce2706271f35575883bf46f90ddc"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/websocket 200 21ms","method":"POST","requestID":"ed86ce2706271f35575883bf46f90ddc","responseTime":21,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/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":"ed86ce2706271f35575883bf46f90ddc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"1c974e6421212d7d4460f59607b052f4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1c974e6421212d7d4460f59607b052f4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c974e6421212d7d4460f59607b052f4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.259329,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c974e6421212d7d4460f59607b052f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c974e6421212d7d4460f59607b052f4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.481721217Z"}]},"request_id":"d6bd45b2-b936-452e-afb7-133b777cb67c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.5510237} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c974e6421212d7d4460f59607b052f4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c974e6421212d7d4460f59607b052f4"} device-1 | {"level":"info","message":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? 200 17ms","method":"GET","requestID":"1c974e6421212d7d4460f59607b052f4","responseTime":17,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c974e6421212d7d4460f59607b052f4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"7da2449291d98c73ed863c19bf339e43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7da2449291d98c73ed863c19bf339e43","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7da2449291d98c73ed863c19bf339e43"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.189349,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7da2449291d98c73ed863c19bf339e43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7da2449291d98c73ed863c19bf339e43","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"67f054e3-5d23-4fdd-a754-9862581d6ba1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.576157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7da2449291d98c73ed863c19bf339e43","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7da2449291d98c73ed863c19bf339e43"} device-1 | {"level":"info","message":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? 200 18ms","method":"GET","requestID":"7da2449291d98c73ed863c19bf339e43","responseTime":18,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7da2449291d98c73ed863c19bf339e43"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"bcffd451032fb97ba4064c7ea32100bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bcffd451032fb97ba4064c7ea32100bd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bcffd451032fb97ba4064c7ea32100bd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.249922,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bcffd451032fb97ba4064c7ea32100bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bcffd451032fb97ba4064c7ea32100bd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to run experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to book experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully booked experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"191c6e20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"191c9530-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619271,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"191c6e20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"191c6e20-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.284062,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"191c9530-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"191c9530-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.481721217Z"}]},"request_id":"51c3550b-3f56-4f0e-8955-383057749257","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.6450384} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"191c6e20-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"1652e861-fdc2-42a7-8ad1-73e42f8ab9bc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.6464446} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"191c9530-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"191c6e20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? 200 19ms","method":"GET","requestID":"191c6e20-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"191c9530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? 200 20ms","method":"GET","requestID":"191c9530-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Setting up experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully set up experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"192806e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19285500-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"19287c10-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully running experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.105978,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"192806e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"192806e0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988116,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"19285500-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19285500-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed3b0c80-0f81-4c0a-a612-8703eb403f09","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.721182} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.474106,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"19287c10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","rebac_allow":false,"scope_allow":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":"19287c10-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.481721217Z"}]},"request_id":"4a19870c-26df-4389-8b9e-25b5745edc40","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7244654} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"244f4d17-0d50-431a-aa0f-fb2f4dbb6634","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7263901} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"192806e0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19285500-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"19287c10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling 200 20ms","method":"POST","requestID":"19287c10-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"192806e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? 200 24ms","method":"GET","requestID":"192806e0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19285500-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? 200 23ms","method":"GET","requestID":"19285500-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"192bfe80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"192c4ca0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa33496fc-153a-4917-bf6b-893cda135a98#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa33496fc-153a-4917-bf6b-893cda135a98","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"a8d0df5e-d801-4993-b154-659b5c3831e6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7395906} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1b80aa9-de9d-4f4f-81ec-b9e0bb21b23c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7398188} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"bcffd451032fb97ba4064c7ea32100bd","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ea0f149-0825-46ce-8988-c4bcc594bbb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7427719} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5eaacbb8-3f5a-4d4a-94c2-3ae67dcb8ce4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7442636} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.483405,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.454186,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"192bfe80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","rebac_allow":false,"scope_allow":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":"192bfe80-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"192c4ca0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","rebac_allow":false,"scope_allow":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":"192c4ca0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bcffd451032fb97ba4064c7ea32100bd"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"bcffd451032fb97ba4064c7ea32100bd","responseTime":160,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"192bfe80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling 200 16ms","method":"POST","requestID":"192bfe80-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"192c4ca0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling 200 15ms","method":"POST","requestID":"192c4ca0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"192f0bc0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"26ec682cdf1e40c950bf1081a19b87af"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"26ec682cdf1e40c950bf1081a19b87af","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26ec682cdf1e40c950bf1081a19b87af"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34c7cfd4-5ed2-4c13-a371-c9b39d72b5f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.762738} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.659106,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"192f0bc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","rebac_allow":false,"scope_allow":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":"192f0bc0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40630","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869482,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"26ec682cdf1e40c950bf1081a19b87af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26ec682cdf1e40c950bf1081a19b87af","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"192f0bc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling 200 13ms","method":"POST","requestID":"192f0bc0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Building connection plan","requestID":"bcffd451032fb97ba4064c7ea32100bd"} 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":"cbdae6d8-5487-4868-8c4a-85054f475ac4"},{"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":"3e298bce-b50e-43e7-8e85-1afc46a8b21d"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1d2be0f5-d0fd-4ded-aa39-76b10b1fe714"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bcffd451032fb97ba4064c7ea32100bd"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"bcffd451032fb97ba4064c7ea32100bd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.481721217Z"}]},"request_id":"3257efbd-cd2e-43b0-80be-7d4f02bde86f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7737966} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"26ec682cdf1e40c950bf1081a19b87af","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26ec682cdf1e40c950bf1081a19b87af"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.038823,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26ec682cdf1e40c950bf1081a19b87af"} device-1 | {"level":"info","message":"GET /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf? 200 19ms","method":"GET","requestID":"26ec682cdf1e40c950bf1081a19b87af","responseTime":19,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1931a3d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI","level":"info","message":"auth send jwt","requestID":"ed4f0d39d01429c8eab224d7f1da796b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ed4f0d39d01429c8eab224d7f1da796b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ed4f0d39d01429c8eab224d7f1da796b","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.769621,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ed4f0d39d01429c8eab224d7f1da796b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752325,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyNX0.WoiB23Cp0lTGYtoTT3jkVYrvBTuDdEY2ARV7wxQLGuI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ed4f0d39d01429c8eab224d7f1da796b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"1be53124-ffdb-4bab-9dc3-92e920e830c1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7981267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83874f46-162f-4e6e-ab2d-df38217ce653","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7982538} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:03.529884815Z"}]},"request_id":"2d0f31db-72d3-4b5a-a061-aacd25065e04","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.7990837} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed4f0d39d01429c8eab224d7f1da796b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ed4f0d39d01429c8eab224d7f1da796b"} gateway-1 | {"time_local":"23/Jul/2024:16:32:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed4f0d39d01429c8eab224d7f1da796b"} device-1 | {"level":"info","message":"GET /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b? 200 17ms","method":"GET","requestID":"ed4f0d39d01429c8eab224d7f1da796b","responseTime":17,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d'","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d'","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961","responseTime":39,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1931a3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bcffd451032fb97ba4064c7ea32100bd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"193b8ee0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d606b5f1-45d1-4b49-947d-6f4e32fd01cd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.842085} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220879,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"193b8ee0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","rebac_allow":false,"scope_allow":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":"193b8ee0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"193b8ee0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling 200 7ms","method":"POST","requestID":"193b8ee0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"193cee70-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01e8b4b4-eb37-44f6-bebb-0c1eed5699f4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752325.8519478} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.391197,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"193cee70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","rebac_allow":false,"scope_allow":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":"193cee70-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"193cee70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling 200 11ms","method":"POST","requestID":"193cee70-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6867887323894041886 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:RSVP\r\na=ice-pwd:pgpuSVYnZjRFdmr6NzU2uSeL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 03:C8:8E:25:D1:66:96:F8:4F:21:D9:3D:B9:C2:1B:C9:85:7E:BD:13:54:45:5F:55:6E:D7:EC:96:E0:5E:21:F5\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf'"} device-1 | {"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/31a08bc7-3df5-4b14-8064-01e54726094d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89762ec5753d396672a15d93925b41bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"89762ec5753d396672a15d93925b41bb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"}}},"level":"info","message":"received a callback","requestID":"89762ec5753d396672a15d93925b41bb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"89762ec5753d396672a15d93925b41bb","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"89762ec5753d396672a15d93925b41bb"} device-1 | {"content":{"candidate":"candidate:3338965165 1 udp 2113937151 c754f475-5ed2-432c-a0b5-a648cc741d9a.local 32912 typ host generation 0 ufrag RSVP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1126824658 1 udp 1677729535 141.24.211.56 32912 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag RSVP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:270812505 1 udp 33562623 141.24.210.113 54345 typ relay raddr 141.24.211.56 rport 32912 generation 0 ufrag RSVP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","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/936cb935-dd65-41f9-b37a-90ed0ad4a2cf'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf'"} device-1 | {"data":{"peerconnection":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"31a08bc7-3df5-4b14-8064-01e54726094d","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/31a08bc7-3df5-4b14-8064-01e54726094d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"491defdaa8c4e1f943558bd56620630c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"491defdaa8c4e1f943558bd56620630c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"}}},"level":"info","message":"received a callback","requestID":"491defdaa8c4e1f943558bd56620630c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1a7a0250-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31a08bc7-3df5-4b14-8064-01e54726094d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2dd1e57-4d72-49a9-b152-bbd80cd8d699","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752327.9317863} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.453196,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a7a0250-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","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":"1a7a0250-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1a7a0250-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d 200 11ms","method":"GET","requestID":"1a7a0250-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"491defdaa8c4e1f943558bd56620630c","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"491defdaa8c4e1f943558bd56620630c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a7f5980-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d37759a-d0a4-4220-aeeb-6bbc1ed9b816","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752327.9659016} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.401106,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a7f5980-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","rebac_allow":false,"scope_allow":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":"1a7f5980-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a7f5980-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling 200 11ms","method":"POST","requestID":"1a7f5980-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a817c60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0fccba9-95cd-4d81-aab4-ca3417b24549","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752327.9801764} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.363651,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a817c60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","rebac_allow":false,"scope_allow":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":"1a817c60-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a817c60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling 200 11ms","method":"POST","requestID":"1a817c60-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a33496fc-153a-4917-bf6b-893cda135a98","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.458757,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c55352a9dfb1f7ac8e26e377e3d1d365","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a33496fc-153a-4917-bf6b-893cda135a98","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a33496fc-153a-4917-bf6b-893cda135a98 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365"} experiment-1 | {"level":"info","message":"GET /experiments/a33496fc-153a-4917-bf6b-893cda135a98 200 17ms","method":"GET","requestID":"c55352a9dfb1f7ac8e26e377e3d1d365","responseTime":17,"status":200,"url":"/experiments/a33496fc-153a-4917-bf6b-893cda135a98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"eee9410c3d72176c12535324b49c14e9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"eee9410c3d72176c12535324b49c14e9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a33496fc-153a-4917-bf6b-893cda135a98","requestID":"eee9410c3d72176c12535324b49c14e9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.302077,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"eee9410c3d72176c12535324b49c14e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eee9410c3d72176c12535324b49c14e9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Attempting to finish experiment","requestID":"eee9410c3d72176c12535324b49c14e9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1a8dff80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.254425,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a8dff80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a8dff80-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d","device":"936cb935-dd65-41f9-b37a-90ed0ad4a2cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8f9032f7-c88c-4dce-94b1-d38c7476390b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/31a08bc7-3df5-4b14-8064-01e54726094d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8f2a9f280320053d773a66fa8cb8290","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a8f2a9f280320053d773a66fa8cb8290","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"}}},"level":"info","message":"received a callback","requestID":"a8f2a9f280320053d773a66fa8cb8290"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32c4b3db82835f59d1c298d9a5a74c28","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31a08bc7-3df5-4b14-8064-01e54726094d': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31a08bc7-3df5-4b14-8064-01e54726094d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"2a2712ec-dbd7-4b9b-bd09-f6068d5afe3f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.084681} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4329332-8b22-44f5-b328-3abbfdc7836d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.0851433} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"32c4b3db82835f59d1c298d9a5a74c28","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"}}},"level":"info","message":"received a callback","requestID":"32c4b3db82835f59d1c298d9a5a74c28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"1a8dff80-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"31a08bc7-3df5-4b14-8064-01e54726094d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1a8dff80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d 204 50ms","method":"DELETE","requestID":"1a8dff80-4911-11ef-863d-25b977f1d961","responseTime":50,"status":204,"url":"/peerconnections/31a08bc7-3df5-4b14-8064-01e54726094d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a33496fc-153a-4917-bf6b-893cda135a98"},"level":"info","message":"Successfully finished experiment","requestID":"eee9410c3d72176c12535324b49c14e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a99bf50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f9032f7-c88c-4dce-94b1-d38c7476390b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f01d978-6f50-486f-b029-e5ec49e02e1c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.1411812} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.332416,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a99bf50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b","object_type":"device","rebac_allow":false,"scope_allow":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":"1a99bf50-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a99bf50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa33496fc-153a-4917-bf6b-893cda135a98': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa33496fc-153a-4917-bf6b-893cda135a98","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"71a2182a-0359-41aa-8f02-e42646d9cb76","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.1487076} device-1 | {"level":"info","message":"POST /devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/signaling 200 16ms","method":"POST","requestID":"1a99bf50-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/8f9032f7-c88c-4dce-94b1-d38c7476390b/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"deecdfe5-3081-4694-a05b-84d8a37a634c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.1492603} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"eee9410c3d72176c12535324b49c14e9","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a9ccc90-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F936cb935-dd65-41f9-b37a-90ed0ad4a2cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3fa8b94-510e-4af5-9a96-b3f3ab8f9599","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.1603234} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.020192,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1a9ccc90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf","object_type":"device","rebac_allow":false,"scope_allow":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":"1a9ccc90-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a9ccc90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling 200 14ms","method":"POST","requestID":"1a9ccc90-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/936cb935-dd65-41f9-b37a-90ed0ad4a2cf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a33496fc-153a-4917-bf6b-893cda135a98","requestID":"eee9410c3d72176c12535324b49c14e9"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a33496fc-153a-4917-bf6b-893cda135a98 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.196","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eee9410c3d72176c12535324b49c14e9"} experiment-1 | {"level":"info","message":"DELETE /experiments/a33496fc-153a-4917-bf6b-893cda135a98 204 191ms","method":"DELETE","requestID":"eee9410c3d72176c12535324b49c14e9","responseTime":191,"status":204,"url":"/experiments/a33496fc-153a-4917-bf6b-893cda135a98"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"4.142","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b16ca2bbddbd499d0a3183cbe582133b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"a8f2a9f280320053d773a66fa8cb8290","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8f2a9f280320053d773a66fa8cb8290"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"32c4b3db82835f59d1c298d9a5a74c28","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"32c4b3db82835f59d1c298d9a5a74c28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"eb1e0fd966633dc9490ec01023a23e4c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eb1e0fd966633dc9490ec01023a23e4c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"eb1e0fd966633dc9490ec01023a23e4c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2742","request_time":"2.728","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"efc6364a9776de1143a3bcea32b90429"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.00991,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"eb1e0fd966633dc9490ec01023a23e4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","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/8f9032f7-c88c-4dce-94b1-d38c7476390b' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e4bb9be1-eaa1-4891-b9c6-5092bd719af4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.2588518} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","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/936cb935-dd65-41f9-b37a-90ed0ad4a2cf' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7bb0c50c-f73b-421f-b53f-e0fa4fef8cfe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.2642024} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"ebd06beb-2ac7-4cff-a935-92c490f2db8e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.2803304} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffb0bf9e-31cf-45cc-930a-55ac8acfd6ef","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.2805412} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.280310255Z"}]},"request_id":"95ea0292-19bf-425b-be97-e8e08087785d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.285674} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"eb1e0fd966633dc9490ec01023a23e4c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb1e0fd966633dc9490ec01023a23e4c"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"eb1e0fd966633dc9490ec01023a23e4c","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.634062,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a95c9254-c62c-47cb-9b29-380404618c31","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.3090112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22e763fb-2dc5-4d8e-87b2-cebb01871341","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.313467} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"1bbfd979-3f84-46b5-9dbe-ee0099f8e18f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.3240063} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f619d383-e44e-4431-942c-e1c6164a676c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.324148} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"09ae69c0-bbd3-4181-beab-1c34e47dfaf0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.328273} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"9a1b2d09c72fba8ca2e2f79a96d1b9b8","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"628a4e88488f2096fffc617b06d0b211"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"628a4e88488f2096fffc617b06d0b211","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"628a4e88488f2096fffc617b06d0b211"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.256132,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"628a4e88488f2096fffc617b06d0b211","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"628a4e88488f2096fffc617b06d0b211","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"60591684-7a3b-4315-aa0b-9472d0348493","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.82401} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"628a4e88488f2096fffc617b06d0b211","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df1ddc31-36b0-4e6f-9f36-cab0f68c141a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.8312974} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"628a4e88488f2096fffc617b06d0b211","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"d77f9483-7f9d-4d0b-930a-35821cae0e20","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752328.8433063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"628a4e88488f2096fffc617b06d0b211","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"628a4e88488f2096fffc617b06d0b211"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ca50006d-bac0-4b97-a09c-d0089874a374 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"628a4e88488f2096fffc617b06d0b211"} device-1 | {"level":"info","message":"PATCH /devices/ca50006d-bac0-4b97-a09c-d0089874a374 200 38ms","method":"PATCH","requestID":"628a4e88488f2096fffc617b06d0b211","responseTime":38,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs","level":"info","message":"auth send jwt","requestID":"af59ff5589edf9156cb3faa3d513adbc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af59ff5589edf9156cb3faa3d513adbc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"af59ff5589edf9156cb3faa3d513adbc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047039,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"af59ff5589edf9156cb3faa3d513adbc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752328,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMyOH0.2Ak_v0YEjiU8v_De_uJCV4s6w6-U5yX0XUbzKKt3mfs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af59ff5589edf9156cb3faa3d513adbc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"af59ff5589edf9156cb3faa3d513adbc"} gateway-1 | {"time_local":"23/Jul/2024:16:32:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"af59ff5589edf9156cb3faa3d513adbc"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/websocket 200 21ms","method":"POST","requestID":"af59ff5589edf9156cb3faa3d513adbc","responseTime":21,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed8dfd92803e534c1c39d16bc523ab42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ed8dfd92803e534c1c39d16bc523ab42","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/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":"ed8dfd92803e534c1c39d16bc523ab42"} device-1 | {"level":"info","message":"OPTIONS /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/websocket 200 1ms","method":"OPTIONS","requestID":"ed8dfd92803e534c1c39d16bc523ab42","responseTime":1,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"f439efe2cdd46510d8e710497b204ba6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f439efe2cdd46510d8e710497b204ba6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f439efe2cdd46510d8e710497b204ba6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.26613,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f439efe2cdd46510d8e710497b204ba6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f439efe2cdd46510d8e710497b204ba6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f439efe2cdd46510d8e710497b204ba6"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/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":"f439efe2cdd46510d8e710497b204ba6"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/websocket 200 21ms","method":"POST","requestID":"f439efe2cdd46510d8e710497b204ba6","responseTime":21,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"899f40ddaf9a67dc0e32e68352abce60"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"899f40ddaf9a67dc0e32e68352abce60","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"899f40ddaf9a67dc0e32e68352abce60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.204886,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"899f40ddaf9a67dc0e32e68352abce60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"899f40ddaf9a67dc0e32e68352abce60","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.280310255Z"}]},"request_id":"24a8ce8b-f2ed-402e-b388-8c6eab23b68b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.3815098} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"899f40ddaf9a67dc0e32e68352abce60","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"899f40ddaf9a67dc0e32e68352abce60"} device-1 | {"level":"info","message":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? 200 18ms","method":"GET","requestID":"899f40ddaf9a67dc0e32e68352abce60","responseTime":18,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"899f40ddaf9a67dc0e32e68352abce60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"29499963e3fdcd7e26dce55c30b16f0e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"29499963e3fdcd7e26dce55c30b16f0e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29499963e3fdcd7e26dce55c30b16f0e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274373,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"29499963e3fdcd7e26dce55c30b16f0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"29499963e3fdcd7e26dce55c30b16f0e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"d2f13b2d-c62f-4846-a103-016871778253","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.4083917} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"29499963e3fdcd7e26dce55c30b16f0e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29499963e3fdcd7e26dce55c30b16f0e"} device-1 | {"level":"info","message":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? 200 18ms","method":"GET","requestID":"29499963e3fdcd7e26dce55c30b16f0e","responseTime":18,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29499963e3fdcd7e26dce55c30b16f0e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da79ec7e51c38a3a33b32ccef1016b60","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.289105,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"da79ec7e51c38a3a33b32ccef1016b60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"da79ec7e51c38a3a33b32ccef1016b60","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to run experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to book experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully booked experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bff42c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718478,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.921117,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1bff42c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1bff42c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.280310255Z"}]},"request_id":"7e2701b8-e6ae-4766-9456-7d8e82eb7db4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.4837205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"6e6bbf5a-d2d7-4bd8-bb99-a8ad9ff1dd60","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.4879348} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1bff42c0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? 200 15ms","method":"GET","requestID":"1bfef4a0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bff42c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? 200 17ms","method":"GET","requestID":"1bff42c0-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Setting up experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully set up experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c09f120-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c0a6650-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully running experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79511,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c09f120-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c09f120-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927017,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41906","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"82bb0c9c-a705-4ac8-8ec5-e1602cc735b4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5607965} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4e93881-8d03-4ada-ad27-5f42c3a69b98","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5608752} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:41906","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.699434,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.280310255Z"}]},"request_id":"9f5c3e44-eeea-4213-bdfc-85c8bc043767","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.56169} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c0a6650-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","rebac_allow":false,"scope_allow":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":"1c0a6650-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c09f120-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc97d7887-8384-4131-b852-0d4478b1837f#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc97d7887-8384-4131-b852-0d4478b1837f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"7951cefe-71fc-48bc-8d92-a978cd563cff","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5672543} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c6d2730-7b78-43d3-92c5-55097e97d05c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5675867} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c0a6650-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling 200 19ms","method":"POST","requestID":"1c0a6650-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? 200 21ms","method":"GET","requestID":"1c0a3f40-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"da79ec7e51c38a3a33b32ccef1016b60","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c09f120-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? 200 25ms","method":"GET","requestID":"1c09f120-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c0de8c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c0eac10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99cb37d1-250e-4929-a634-4bde49baa4bf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5786023} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.787549,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c0de8c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"da79ec7e51c38a3a33b32ccef1016b60","responseTime":158,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1c0de8c0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c999c7f1-31cb-4a0f-bc4e-7c94e1b495d9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5829754} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.113791,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c0eac10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","rebac_allow":false,"scope_allow":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":"1c0eac10-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c0de8c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling 200 14ms","method":"POST","requestID":"1c0de8c0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"36d151231c9f6ecfaf8dea35d336ca93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"36d151231c9f6ecfaf8dea35d336ca93","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36d151231c9f6ecfaf8dea35d336ca93"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c0eac10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling 200 14ms","method":"POST","requestID":"1c0eac10-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.046115,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c114420-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"36d151231c9f6ecfaf8dea35d336ca93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36d151231c9f6ecfaf8dea35d336ca93","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.280310255Z"}]},"request_id":"78f2ae32-45f0-4e11-89f4-265d314bf2d6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.598665} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8d72815-f08a-4b3c-8bac-ca0c37505bca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.5987244} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"36d151231c9f6ecfaf8dea35d336ca93","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.717351,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c114420-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","rebac_allow":false,"scope_allow":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":"1c114420-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36d151231c9f6ecfaf8dea35d336ca93"} device-1 | {"level":"info","message":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? 200 16ms","method":"GET","requestID":"36d151231c9f6ecfaf8dea35d336ca93","responseTime":16,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36d151231c9f6ecfaf8dea35d336ca93"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c114420-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling 200 12ms","method":"POST","requestID":"1c114420-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Building connection plan","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} 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":"8321f7ca-45a7-4763-9025-5a084ec42599"},{"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":"4f89b5de-1fac-40c1-9394-54e29bf58f09"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"d5f1303e-1a93-445e-8db0-bb6615a79fcf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus","level":"info","message":"auth send jwt","requestID":"71a2252cdb3c29732b92193251014735"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71a2252cdb3c29732b92193251014735","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71a2252cdb3c29732b92193251014735"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.254266,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c138e10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1c138e10-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41892","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.834404,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"71a2252cdb3c29732b92193251014735","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752330,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMH0.uYc4rf6yt3thcAOR0TBvA2jo1Z5BmUC7f7tQErJocus"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71a2252cdb3c29732b92193251014735","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:08.323973881Z"}]},"request_id":"3fb9ee33-ea2e-43b6-80f5-2d5d05ddc2f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.6199708} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71a2252cdb3c29732b92193251014735","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71a2252cdb3c29732b92193251014735"} gateway-1 | {"time_local":"23/Jul/2024:16:32:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71a2252cdb3c29732b92193251014735"} device-1 | {"level":"info","message":"GET /devices/ca50006d-bac0-4b97-a09c-d0089874a374? 200 13ms","method":"GET","requestID":"71a2252cdb3c29732b92193251014735","responseTime":13,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"d04a87b9-0d23-4188-a7ed-0f23e3a76c79","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.625467} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e33b7ce-7f14-4363-9276-228ab3bd1c50","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.6256258} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1c138e10-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288'","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288'","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1c138e10-4911-11ef-863d-25b977f1d961"} 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":"1c138e10-4911-11ef-863d-25b977f1d961","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":"1c138e10-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"da79ec7e51c38a3a33b32ccef1016b60"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c1c67b0-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a157c80-8209-4cbf-b838-a5f0171508da","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.6730518} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.45206,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 6433662372591461264 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:oLFa\r\na=ice-pwd:UjOxT6zP8J3yK3a4Le9za9/+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1A:4D:9B:B1:A1:4D:90:D6:EA:9A:78:E1:DB:67:40:DB:0D:74:71:56:29:E2:AD:34:D1:EA:EC:9D:2E:A1:8B:0C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c1c67b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","rebac_allow":false,"scope_allow":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":"1c1c67b0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c1c67b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling 200 12ms","method":"POST","requestID":"1c1c67b0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c1eb1a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"537acf58-e453-4217-bd67-ecc428bdd4ec","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752330.6864574} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.152865,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c1eb1a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","rebac_allow":false,"scope_allow":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":"1c1eb1a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c1eb1a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling 200 8ms","method":"POST","requestID":"1c1eb1a0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling"} device-1 | {"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6f9ce32e35f09a62ee925895705adfab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6f9ce32e35f09a62ee925895705adfab","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"}}},"level":"info","message":"received a callback","requestID":"6f9ce32e35f09a62ee925895705adfab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"6f9ce32e35f09a62ee925895705adfab","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"6f9ce32e35f09a62ee925895705adfab"} device-1 | {"content":{"candidate":"candidate:18296988 1 udp 2113937151 7db43a76-e291-43f3-885d-4487e1568dd3.local 46106 typ host generation 0 ufrag oLFa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2453442959 1 udp 1677729535 141.24.211.56 46106 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag oLFa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:739256957 1 udp 33562623 141.24.210.113 65503 typ relay raddr 141.24.211.56 rport 46106 generation 0 ufrag oLFa network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","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/23036a2c-9d1b-4d44-9d2f-0314a1d00f73'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73'"} device-1 | {"device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","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/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5318cfdebede25f66de3b94de795282b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5318cfdebede25f66de3b94de795282b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"}}},"level":"info","message":"received a callback","requestID":"5318cfdebede25f66de3b94de795282b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1d5fbd20-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7170fa79-65b8-4e73-8a35-bba38cc98af8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.7918525} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.1964,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d5fbd20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","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":"1d5fbd20-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1d5fbd20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288 200 11ms","method":"GET","requestID":"1d5fbd20-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"5318cfdebede25f66de3b94de795282b","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"5318cfdebede25f66de3b94de795282b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d64c630-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03dc6ee2-1340-4b8c-a1c4-0b543058075b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.8262644} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.098802,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d64c630-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","rebac_allow":false,"scope_allow":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":"1d64c630-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d64c630-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling 200 14ms","method":"POST","requestID":"1d64c630-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d675e40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87fbf6eb-5e2b-40ac-8488-23949c5910ce","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.8428202} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.920553,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d675e40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","rebac_allow":false,"scope_allow":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":"1d675e40-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d675e40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling 200 13ms","method":"POST","requestID":"1d675e40-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMn0.1SAf6UfFt99BTdgsN50xhLqOKCMcK4TeBkeOxOnLu2U","level":"info","message":"auth send jwt","requestID":"f28a22b38b9835dbaac88ea25b4e68fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f28a22b38b9835dbaac88ea25b4e68fa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c97d7887-8384-4131-b852-0d4478b1837f","requestID":"f28a22b38b9835dbaac88ea25b4e68fa"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.314938,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f28a22b38b9835dbaac88ea25b4e68fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752332,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMn0.1SAf6UfFt99BTdgsN50xhLqOKCMcK4TeBkeOxOnLu2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f28a22b38b9835dbaac88ea25b4e68fa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c97d7887-8384-4131-b852-0d4478b1837f","requestID":"f28a22b38b9835dbaac88ea25b4e68fa"} gateway-1 | {"time_local":"23/Jul/2024:16:32:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c97d7887-8384-4131-b852-0d4478b1837f HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f28a22b38b9835dbaac88ea25b4e68fa"} experiment-1 | {"level":"info","message":"GET /experiments/c97d7887-8384-4131-b852-0d4478b1837f 200 14ms","method":"GET","requestID":"f28a22b38b9835dbaac88ea25b4e68fa","responseTime":14,"status":200,"url":"/experiments/c97d7887-8384-4131-b852-0d4478b1837f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMn0.1SAf6UfFt99BTdgsN50xhLqOKCMcK4TeBkeOxOnLu2U","level":"info","message":"auth send jwt","requestID":"89f021c13f0ae1b54ed77f8b74f01454"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"89f021c13f0ae1b54ed77f8b74f01454","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c97d7887-8384-4131-b852-0d4478b1837f","requestID":"89f021c13f0ae1b54ed77f8b74f01454"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.217017,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"89f021c13f0ae1b54ed77f8b74f01454","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752332,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMn0.1SAf6UfFt99BTdgsN50xhLqOKCMcK4TeBkeOxOnLu2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"89f021c13f0ae1b54ed77f8b74f01454","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Attempting to finish experiment","requestID":"89f021c13f0ae1b54ed77f8b74f01454"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1d736c30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.186127,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d736c30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752332,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzMn0.1SAf6UfFt99BTdgsN50xhLqOKCMcK4TeBkeOxOnLu2U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d736c30-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","device":"23036a2c-9d1b-4d44-9d2f-0314a1d00f73","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"ca50006d-bac0-4b97-a09c-d0089874a374","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"ca6c5ec0-d214-47f2-b4e3-b9448dc3aaeb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.940993} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bef4f33268309674e714ba799ab5a283","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac8e120b-a0ee-4254-82e3-a39dafacae77","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.9415295} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bef4f33268309674e714ba799ab5a283","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1d736c30-4911-11ef-863d-25b977f1d961","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"}}},"level":"info","message":"received a callback","requestID":"bef4f33268309674e714ba799ab5a283"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a2336f1bf39b84f5bbda82b2347d294","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7a2336f1bf39b84f5bbda82b2347d294","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"}}},"level":"info","message":"received a callback","requestID":"7a2336f1bf39b84f5bbda82b2347d294"} device-1 | {"data":{"peerconnection":"7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1d736c30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288 204 52ms","method":"DELETE","requestID":"1d736c30-4911-11ef-863d-25b977f1d961","responseTime":52,"status":204,"url":"/peerconnections/7e33ce8a-4f39-4e50-bfd3-fc3eedaa6288"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c97d7887-8384-4131-b852-0d4478b1837f"},"level":"info","message":"Successfully finished experiment","requestID":"89f021c13f0ae1b54ed77f8b74f01454"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d7f04f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca50006d-bac0-4b97-a09c-d0089874a374","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19ee67fc-a389-41fd-90bc-21c4cfccfc7d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752332.9984002} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.082588,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d7f04f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374","object_type":"device","rebac_allow":false,"scope_allow":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":"1d7f04f0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d7f04f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling 200 14ms","method":"POST","requestID":"1d7f04f0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/ca50006d-bac0-4b97-a09c-d0089874a374/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc97d7887-8384-4131-b852-0d4478b1837f': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc97d7887-8384-4131-b852-0d4478b1837f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"e9a24526-7aa8-458b-96e2-ba85e269084a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.0068314} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d819d00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52abc086-75d4-485d-bd39-6dcaba21b5ac","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.0072212} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"89f021c13f0ae1b54ed77f8b74f01454","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23036a2c-9d1b-4d44-9d2f-0314a1d00f73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"066627fb-8f9f-4bce-8538-f77ded02c629","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.0145295} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.66054,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1d819d00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73","object_type":"device","rebac_allow":false,"scope_allow":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":"1d819d00-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d819d00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling 200 13ms","method":"POST","requestID":"1d819d00-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/23036a2c-9d1b-4d44-9d2f-0314a1d00f73/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c97d7887-8384-4131-b852-0d4478b1837f","requestID":"89f021c13f0ae1b54ed77f8b74f01454"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c97d7887-8384-4131-b852-0d4478b1837f 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":"89f021c13f0ae1b54ed77f8b74f01454"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3227","request_time":"4.199","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9e169f846d65e40f4af0530a09d1577c"} experiment-1 | {"level":"info","message":"DELETE /experiments/c97d7887-8384-4131-b852-0d4478b1837f 204 179ms","method":"DELETE","requestID":"89f021c13f0ae1b54ed77f8b74f01454","responseTime":179,"status":204,"url":"/experiments/c97d7887-8384-4131-b852-0d4478b1837f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"bef4f33268309674e714ba799ab5a283","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","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":"bef4f33268309674e714ba799ab5a283"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"7a2336f1bf39b84f5bbda82b2347d294","responseTime":133,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954","level":"info","message":"auth send jwt","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","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":"7a2336f1bf39b84f5bbda82b2347d294"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:13Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2742","request_time":"2.741","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1da7f35d7e4e97360b44602f4435233c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.848867,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:13Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ca50006d-bac0-4b97-a09c-d0089874a374' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752333,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42bd65a4-d76f-405c-8d5b-40a0388416d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1028917} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","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/23036a2c-9d1b-4d44-9d2f-0314a1d00f73' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff115139-ce31-4eae-ac57-f805d061750d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1088367} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"70e69a3c-887b-4718-8aa3-d137dce3ef2a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1191273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b8a737e-4964-440a-85ee-7edf36659ba6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1194386} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"f3dd58f8-e39a-4ac8-9a5e-0386e8077882","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.123805} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"4a45919a08ae2fd318157b3ccc5f6ae8","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954","level":"info","message":"auth send jwt","requestID":"f3bb9fac5022ccc313b47339ad924a5b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3bb9fac5022ccc313b47339ad924a5b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f3bb9fac5022ccc313b47339ad924a5b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.730861,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f3bb9fac5022ccc313b47339ad924a5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752333,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bc48d1d5-c62a-4412-9027-f6944c953e9e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1531475} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e40ea90-2e46-449d-a903-0452e93d53b6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1575942} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"88de1f1a-4fd9-435d-8715-572d26e9f962","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1688294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b51ebc6-e7ec-4a7a-8a20-558b94b03fc9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.1691253} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.168805482Z"}]},"request_id":"f0c5c787-27dc-4f9d-bff9-85dea5dbaf16","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.173407} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f3bb9fac5022ccc313b47339ad924a5b"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"f3bb9fac5022ccc313b47339ad924a5b","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3bb9fac5022ccc313b47339ad924a5b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954","level":"info","message":"auth send jwt","requestID":"cb7d60f240576242b18568386f18dd9e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cb7d60f240576242b18568386f18dd9e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cb7d60f240576242b18568386f18dd9e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.601989,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cb7d60f240576242b18568386f18dd9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752333,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb7d60f240576242b18568386f18dd9e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"0a6c58f4-a347-439b-a7f0-967a81d71dfd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.6677382} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb7d60f240576242b18568386f18dd9e","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1607ec3d-7afe-458f-b93d-9de119686286","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.6737294} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cb7d60f240576242b18568386f18dd9e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"282141f7-2590-4332-9677-ae56681c9886","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752333.6874757} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb7d60f240576242b18568386f18dd9e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cb7d60f240576242b18568386f18dd9e"} device-1 | {"level":"info","message":"PATCH /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b 200 36ms","method":"PATCH","requestID":"cb7d60f240576242b18568386f18dd9e","responseTime":36,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cb7d60f240576242b18568386f18dd9e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954","level":"info","message":"auth send jwt","requestID":"83f8b336c1333940ccb07ee80f37b869"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83f8b336c1333940ccb07ee80f37b869","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"83f8b336c1333940ccb07ee80f37b869"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366122,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"83f8b336c1333940ccb07ee80f37b869","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752333,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzM30.OmedgZWj9y6xAV5i6wdavdW6aDo-GISqJgXkZnTy954"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"83f8b336c1333940ccb07ee80f37b869","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"83f8b336c1333940ccb07ee80f37b869"} gateway-1 | {"time_local":"23/Jul/2024:16:32:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"83f8b336c1333940ccb07ee80f37b869"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/websocket 200 21ms","method":"POST","requestID":"83f8b336c1333940ccb07ee80f37b869","responseTime":21,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce8f1ba92910d3ab1b818094fa58028a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ce8f1ba92910d3ab1b818094fa58028a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/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":"ce8f1ba92910d3ab1b818094fa58028a"} device-1 | {"level":"info","message":"OPTIONS /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/websocket 200 1ms","method":"OPTIONS","requestID":"ce8f1ba92910d3ab1b818094fa58028a","responseTime":1,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"0458eb35564319f5fcefcfbf2676dadd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0458eb35564319f5fcefcfbf2676dadd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0458eb35564319f5fcefcfbf2676dadd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307167,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0458eb35564319f5fcefcfbf2676dadd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0458eb35564319f5fcefcfbf2676dadd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0458eb35564319f5fcefcfbf2676dadd"} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/websocket 200 23ms","method":"POST","requestID":"0458eb35564319f5fcefcfbf2676dadd","responseTime":23,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/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":"0458eb35564319f5fcefcfbf2676dadd"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"baeb478b10022cfe6445879c9acb7ddf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"baeb478b10022cfe6445879c9acb7ddf","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"baeb478b10022cfe6445879c9acb7ddf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.382372,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"baeb478b10022cfe6445879c9acb7ddf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baeb478b10022cfe6445879c9acb7ddf","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"d65556a1-48cd-497d-b103-572b20f79fa9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.1979897} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"baeb478b10022cfe6445879c9acb7ddf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"baeb478b10022cfe6445879c9acb7ddf"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"baeb478b10022cfe6445879c9acb7ddf"} device-1 | {"level":"info","message":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? 200 20ms","method":"GET","requestID":"baeb478b10022cfe6445879c9acb7ddf","responseTime":20,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"e2de079eae4dcd6602223a5b6ead3028"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e2de079eae4dcd6602223a5b6ead3028","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2de079eae4dcd6602223a5b6ead3028"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.348569,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e2de079eae4dcd6602223a5b6ead3028","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2de079eae4dcd6602223a5b6ead3028","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.168805482Z"}]},"request_id":"00954c79-4a7f-4381-b969-c600458791fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.2240515} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2de079eae4dcd6602223a5b6ead3028","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2de079eae4dcd6602223a5b6ead3028"} device-1 | {"level":"info","message":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? 200 17ms","method":"GET","requestID":"e2de079eae4dcd6602223a5b6ead3028","responseTime":17,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2de079eae4dcd6602223a5b6ead3028"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"446c4e5b6982c86001f350c1d1edc1a7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.213364,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"446c4e5b6982c86001f350c1d1edc1a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"446c4e5b6982c86001f350c1d1edc1a7","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to run experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to book experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully booked experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1edce740-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1edd3560-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.824708,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1edce740-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1edce740-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.414309,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1edd3560-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1edd3560-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"6fde04ab-dc7a-47c8-bd38-e90396d088c2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.296496} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1edce740-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.168805482Z"}]},"request_id":"dff0b47b-4b0f-4e4d-bc1f-939c5b2e2a2d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.301807} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1edce740-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1edd3560-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? 200 19ms","method":"GET","requestID":"1edce740-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1edd3560-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? 200 19ms","method":"GET","requestID":"1edd3560-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Setting up experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully locked booking for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to update booking for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully updated booking for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully set up experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ee72070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ee76e90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ee795a0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully running experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800553,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1ee72070-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1ee72070-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857087,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1ee76e90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ee76e90-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47556","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.168805482Z"}]},"request_id":"edbbfda3-37ad-4eba-832b-7f61a8340e6a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3629396} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1ee76e90-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"ba07ad84-9b2e-44e0-9a7a-134c85583063","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3656435} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5e568a6-225d-4b97-8bdb-26fdc558c764","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3662755} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ee72070-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:47556","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.068662,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1ee795a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","rebac_allow":false,"scope_allow":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":"1ee795a0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ee76e90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? 200 18ms","method":"GET","requestID":"1ee76e90-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ee72070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? 200 21ms","method":"GET","requestID":"1ee72070-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ee795a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling 200 19ms","method":"POST","requestID":"1ee795a0-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eeaa2e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eeaf100-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6274fa05-67fc-43cf-907a-26888b1fc045#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6274fa05-67fc-43cf-907a-26888b1fc045","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"e60b9e4f-4c1f-45c5-bba0-5190d7fe01b6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3761566} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b4783a4-eb00-4bb3-85de-9112ae1a0f93","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3765385} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"446c4e5b6982c86001f350c1d1edc1a7","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.726067,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"624d1183-d571-4d59-940d-6c1c65b618a3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.379193} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1eeaa2e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","rebac_allow":false,"scope_allow":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":"1eeaa2e0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b42a4950-2b72-47f1-869a-45fafa3d779e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3824236} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.226537,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eeaa2e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling 200 11ms","method":"POST","requestID":"1eeaa2e0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1eeaf100-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","rebac_allow":false,"scope_allow":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":"1eeaf100-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eeaf100-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling 200 12ms","method":"POST","requestID":"1eeaf100-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eececd0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"446c4e5b6982c86001f350c1d1edc1a7","responseTime":152,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edf1b0c6-2a8d-484f-9d53-aa2e1a28dc3c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.3946183} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.372864,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1eececd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"edd10192887527050792d2669e79a7d5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1eececd0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"edd10192887527050792d2669e79a7d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"edd10192887527050792d2669e79a7d5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eececd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling 200 10ms","method":"POST","requestID":"1eececd0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Building connection plan","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718262,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} 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":"51b6348e-726b-415b-90f0-1af177467ebf"},{"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":"7d1fe744-09f9-4a2c-bf20-ca985c23c873"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"784cde36-d095-4f83-b0c9-5c49f11cfeb0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"edd10192887527050792d2669e79a7d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"edd10192887527050792d2669e79a7d5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.728563,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.119107751Z"}]},"request_id":"d9fe27a7-aec9-469e-98a3-c5e052f3fdbb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4062366} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"edd10192887527050792d2669e79a7d5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"edd10192887527050792d2669e79a7d5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edd10192887527050792d2669e79a7d5"} device-1 | {"level":"info","message":"GET /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b? 200 12ms","method":"GET","requestID":"edd10192887527050792d2669e79a7d5","responseTime":12,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII","level":"info","message":"auth send jwt","requestID":"a4e186df8560d1fb9478c15866f360e1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a4e186df8560d1fb9478c15866f360e1","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"2b7faeda-b956-4df1-9825-f10d2c6e959f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4151928} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4e186df8560d1fb9478c15866f360e1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52204b71-0765-4d44-9c39-157a49cebb59","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4154375} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889247,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a4e186df8560d1fb9478c15866f360e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752335,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzNX0.KcSd19iWnc-MclQbbDBUiPKHA-LQwmpqpsfVF5bLyII"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a4e186df8560d1fb9478c15866f360e1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:13.168805482Z"}]},"request_id":"f4e9bbb7-0bea-49ee-a244-d7c97bc924fb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4224484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4e186df8560d1fb9478c15866f360e1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222'","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222'","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} 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":"1eeee8a0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4e186df8560d1fb9478c15866f360e1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4e186df8560d1fb9478c15866f360e1"} device-1 | {"level":"info","message":"GET /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849? 200 14ms","method":"GET","requestID":"a4e186df8560d1fb9478c15866f360e1","responseTime":14,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1eeee8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"446c4e5b6982c86001f350c1d1edc1a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ef6d7e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"878bced5-8f45-4988-ad1f-03c97072bc12","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4586155} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.339317,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1ef6d7e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","rebac_allow":false,"scope_allow":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":"1ef6d7e0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ef6d7e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling 200 8ms","method":"POST","requestID":"1ef6d7e0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ef85e80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0cb380c-f765-40ed-b1d5-3590c3a22c64","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752335.4686384} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.31885,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1ef85e80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","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 | {"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ef85e80-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ef85e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling 200 9ms","method":"POST","requestID":"1ef85e80-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling"} device-1 | {"device":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7723260729640041834 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:gAXW\r\na=ice-pwd:7Zjldqbvdu/akxJrzXaaZG5k\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9E:5B:41:40:C8:44:46:ED:BF:3B:21:D4:6C:29:4F:D1:3B:35:B7:C5:6B:F9:73:CF:E9:F0:46:FF:8F:EE:14:83\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1106743176 1 udp 2113937151 c9077e8e-cc82-4bc8-ac1d-a113d943c3a4.local 32827 typ host generation 0 ufrag gAXW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3537645211 1 udp 1677729535 141.24.211.56 32827 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag gAXW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","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/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","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/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6bccfe24e1e5ebf309bed62e2c58f470","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6bccfe24e1e5ebf309bed62e2c58f470","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"}}},"level":"info","message":"received a callback","requestID":"6bccfe24e1e5ebf309bed62e2c58f470"} device-1 | {"device":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"6bccfe24e1e5ebf309bed62e2c58f470","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"6bccfe24e1e5ebf309bed62e2c58f470"} device-1 | {"data":{"peerconnection":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","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/7af2f5d1-ec4b-4982-be88-921f1d056222' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0998b54b848cf5fec54db41787684cc5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0998b54b848cf5fec54db41787684cc5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"}}},"level":"info","message":"received a callback","requestID":"0998b54b848cf5fec54db41787684cc5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"20372010-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7af2f5d1-ec4b-4982-be88-921f1d056222","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1de06c4f-8e74-4a41-9c9f-ab468a35650c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.5577765} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.265711,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"20372010-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","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":"20372010-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"20372010-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222 200 8ms","method":"GET","requestID":"20372010-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"0998b54b848cf5fec54db41787684cc5","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"0998b54b848cf5fec54db41787684cc5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"203b65d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8afeec6-28c5-41c8-b8a3-0ef96ed57978","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.5860124} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422439,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"203b65d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","rebac_allow":false,"scope_allow":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":"203b65d0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"203b65d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling 200 10ms","method":"POST","requestID":"203b65d0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"203d61a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ce6953d4-2ee5-44ee-b9d4-088d53ecf3e2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.5989647} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.667037,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"203d61a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","rebac_allow":false,"scope_allow":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":"203d61a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"203d61a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling 200 9ms","method":"POST","requestID":"203d61a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU","level":"info","message":"auth send jwt","requestID":"217af769c5e0f977342030cc348e2887"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"217af769c5e0f977342030cc348e2887","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6274fa05-67fc-43cf-907a-26888b1fc045","requestID":"217af769c5e0f977342030cc348e2887"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.277163,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"217af769c5e0f977342030cc348e2887","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752337,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"217af769c5e0f977342030cc348e2887","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6274fa05-67fc-43cf-907a-26888b1fc045","requestID":"217af769c5e0f977342030cc348e2887"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6274fa05-67fc-43cf-907a-26888b1fc045 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"217af769c5e0f977342030cc348e2887"} experiment-1 | {"level":"info","message":"GET /experiments/6274fa05-67fc-43cf-907a-26888b1fc045 200 16ms","method":"GET","requestID":"217af769c5e0f977342030cc348e2887","responseTime":16,"status":200,"url":"/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU","level":"info","message":"auth send jwt","requestID":"f2a04ca4735fb3162590a872a3f8f810"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f2a04ca4735fb3162590a872a3f8f810","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6274fa05-67fc-43cf-907a-26888b1fc045","requestID":"f2a04ca4735fb3162590a872a3f8f810"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.339283,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f2a04ca4735fb3162590a872a3f8f810","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752337,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2a04ca4735fb3162590a872a3f8f810","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Attempting to finish experiment","requestID":"f2a04ca4735fb3162590a872a3f8f810"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"204c55c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.362239,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"204c55c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752337,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"204c55c0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222","device":"7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8d9fbd85-0fbc-4b88-82da-09cf70d6700b","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/7af2f5d1-ec4b-4982-be88-921f1d056222' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7af2f5d1-ec4b-4982-be88-921f1d056222': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7af2f5d1-ec4b-4982-be88-921f1d056222","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"ee412094-fae3-4e1a-9575-d58baeaa7403","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.717342} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"208b2e4402562d38514c1fe35ff756d6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"208b2e4402562d38514c1fe35ff756d6","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c843bd8-4540-4ba8-9b97-71f104a7c5ec","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.7179682} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"204c55c0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5b811d90d4b135bfbdf76d13a1e62a61","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"}}},"level":"info","message":"received a callback","requestID":"208b2e4402562d38514c1fe35ff756d6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5b811d90d4b135bfbdf76d13a1e62a61","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"}}},"level":"info","message":"received a callback","requestID":"5b811d90d4b135bfbdf76d13a1e62a61"} device-1 | {"data":{"peerconnection":"7af2f5d1-ec4b-4982-be88-921f1d056222","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"204c55c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222 204 49ms","method":"DELETE","requestID":"204c55c0-4911-11ef-863d-25b977f1d961","responseTime":49,"status":204,"url":"/peerconnections/7af2f5d1-ec4b-4982-be88-921f1d056222"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"},"level":"info","message":"Successfully finished experiment","requestID":"f2a04ca4735fb3162590a872a3f8f810"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2057c770-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22f49479-3711-404c-b93a-3bbff7a29f8c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.7758558} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.358443,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2057c770-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849","object_type":"device","rebac_allow":false,"scope_allow":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":"2057c770-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6274fa05-67fc-43cf-907a-26888b1fc045': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6274fa05-67fc-43cf-907a-26888b1fc045","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"38753f01-25ec-4ce9-b80d-8f91dbe6fc91","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.7821774} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2057c770-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9f998ac-4b74-451e-9034-1459d8ee0c9e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.7825835} device-1 | {"level":"info","message":"POST /devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling 200 16ms","method":"POST","requestID":"2057c770-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f2a04ca4735fb3162590a872a3f8f810","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"205ad4b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8d9fbd85-0fbc-4b88-82da-09cf70d6700b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c32b968d-dbd0-4f2e-98ba-a1e33b092e6e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.7939944} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.016219,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"205ad4b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b","object_type":"device","rebac_allow":false,"scope_allow":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":"205ad4b0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"205ad4b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling 200 14ms","method":"POST","requestID":"205ad4b0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6274fa05-67fc-43cf-907a-26888b1fc045","requestID":"f2a04ca4735fb3162590a872a3f8f810"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6274fa05-67fc-43cf-907a-26888b1fc045 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":"f2a04ca4735fb3162590a872a3f8f810"} experiment-1 | {"level":"info","message":"DELETE /experiments/6274fa05-67fc-43cf-907a-26888b1fc045 204 181ms","method":"DELETE","requestID":"f2a04ca4735fb3162590a872a3f8f810","responseTime":181,"status":204,"url":"/experiments/6274fa05-67fc-43cf-907a-26888b1fc045"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2839","request_time":"4.137","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"95d9384c347b85a182c758ee3c052824"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"208b2e4402562d38514c1fe35ff756d6","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"208b2e4402562d38514c1fe35ff756d6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"5b811d90d4b135bfbdf76d13a1e62a61","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"5b811d90d4b135bfbdf76d13a1e62a61"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU","level":"info","message":"auth send jwt","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.711","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"95868b5750629a8b704aa223f49a99ec"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.338067,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752337,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8d9fbd85-0fbc-4b88-82da-09cf70d6700b' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","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/7c8fda20-7f21-4e61-8f8d-2c57d1ad8849' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c5bd4695-2355-4d49-ba7e-edcbbea9c28f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.8890014} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"591ca371-aea8-4257-ac5d-961fd53804fe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.8952076} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8ccbecd5-c667-4c18-a74e-07410d4b11bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.904538} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"362f1a1b-ea54-400e-9cb8-5e543fea3a51","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9048975} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"b3126336-fdfc-4e78-a339-c9650f3a8184","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9105144} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"21eb9aaab8f09d5237dbfaabf8858ffa","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU","level":"info","message":"auth send jwt","requestID":"65927c2f2b2b1c903e95c60d247a3b97"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"65927c2f2b2b1c903e95c60d247a3b97","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"65927c2f2b2b1c903e95c60d247a3b97"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.807405,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"65927c2f2b2b1c903e95c60d247a3b97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752337,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzN30.QYK71zAvJhZtyDksiW-owl6hkMgbu-RVeuCH4n8BafU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e9fa4c4b-e285-453a-a568-b022fbcf533a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9351056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8143c7f5-f1e9-4f91-9a39-f8f766856391","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9397511} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"71fcc048-7834-4d92-9d51-327443c86152","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9557328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9df45c66-84d0-490e-99ad-3616646a640d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.955831} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.955710125Z"}]},"request_id":"fcb7f2fd-e8bc-4ca7-944f-f4ac58ae1701","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752337.9604256} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"65927c2f2b2b1c903e95c60d247a3b97"} gateway-1 | {"time_local":"23/Jul/2024:16:32:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65927c2f2b2b1c903e95c60d247a3b97"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"65927c2f2b2b1c903e95c60d247a3b97","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOH0.PqmI4IIMivckoN9lyasmuIZrYjFG5C6PmIecGgdqa-4","level":"info","message":"auth send jwt","requestID":"347b3b426c9aab48506afc2c92c66016"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"347b3b426c9aab48506afc2c92c66016","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"347b3b426c9aab48506afc2c92c66016"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648396,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"347b3b426c9aab48506afc2c92c66016","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752338,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOH0.PqmI4IIMivckoN9lyasmuIZrYjFG5C6PmIecGgdqa-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"347b3b426c9aab48506afc2c92c66016","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"3bb5f2a2-1fc3-44f7-bd08-57a735900d54","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752338.4524877} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"347b3b426c9aab48506afc2c92c66016","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1631ebc4-243e-4ec1-93a5-18f7735c5497","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752338.4591188} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"347b3b426c9aab48506afc2c92c66016","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"0eca68e7-b9c4-4233-ba1f-62bd4805f7f2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752338.470002} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"347b3b426c9aab48506afc2c92c66016","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"347b3b426c9aab48506afc2c92c66016"} device-1 | {"level":"info","message":"PATCH /devices/1302479d-7a3b-4f96-91fb-77236b608920 200 30ms","method":"PATCH","requestID":"347b3b426c9aab48506afc2c92c66016","responseTime":30,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920"} gateway-1 | {"time_local":"23/Jul/2024:16:32:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1302479d-7a3b-4f96-91fb-77236b608920 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"347b3b426c9aab48506afc2c92c66016"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOH0.PqmI4IIMivckoN9lyasmuIZrYjFG5C6PmIecGgdqa-4","level":"info","message":"auth send jwt","requestID":"898ce4766f8a0439c38809ee88a381ac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"898ce4766f8a0439c38809ee88a381ac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"898ce4766f8a0439c38809ee88a381ac"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297469,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"898ce4766f8a0439c38809ee88a381ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752338,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOH0.PqmI4IIMivckoN9lyasmuIZrYjFG5C6PmIecGgdqa-4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"898ce4766f8a0439c38809ee88a381ac","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"898ce4766f8a0439c38809ee88a381ac"} gateway-1 | {"time_local":"23/Jul/2024:16:32:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"898ce4766f8a0439c38809ee88a381ac"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/websocket 200 19ms","method":"POST","requestID":"898ce4766f8a0439c38809ee88a381ac","responseTime":19,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a252c58bc575a248a9d0d0e24fea2f67","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a252c58bc575a248a9d0d0e24fea2f67","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/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":"a252c58bc575a248a9d0d0e24fea2f67"} device-1 | {"level":"info","message":"OPTIONS /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/websocket 200 2ms","method":"OPTIONS","requestID":"a252c58bc575a248a9d0d0e24fea2f67","responseTime":2,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOX0.vo16bBUt-dvom_M_sa3cRcECUc2FSaMglDiA8Lx40HU","level":"info","message":"auth send jwt","requestID":"4728c836372090af7a7e1ce921e2c291"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4728c836372090af7a7e1ce921e2c291","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4728c836372090af7a7e1ce921e2c291"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:19Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.731034,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4728c836372090af7a7e1ce921e2c291","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752339,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjMzOX0.vo16bBUt-dvom_M_sa3cRcECUc2FSaMglDiA8Lx40HU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4728c836372090af7a7e1ce921e2c291","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4728c836372090af7a7e1ce921e2c291"} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/websocket 200 23ms","method":"POST","requestID":"4728c836372090af7a7e1ce921e2c291","responseTime":23,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/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":"4728c836372090af7a7e1ce921e2c291"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E","level":"info","message":"auth send jwt","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221395,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f1c6bed9e4f8a00a81027be9db7b1b54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"510d8a41-13d3-4910-abc2-92d93b79a92b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.0265455} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54"} gateway-1 | {"time_local":"23/Jul/2024:16:32:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54"} device-1 | {"level":"info","message":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? 200 18ms","method":"GET","requestID":"f1c6bed9e4f8a00a81027be9db7b1b54","responseTime":18,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E","level":"info","message":"auth send jwt","requestID":"8bee1d0522db41acb4557b8660cad58e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8bee1d0522db41acb4557b8660cad58e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bee1d0522db41acb4557b8660cad58e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272843,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8bee1d0522db41acb4557b8660cad58e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8bee1d0522db41acb4557b8660cad58e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.955710125Z"}]},"request_id":"907902f9-d9aa-4789-b5e6-e334db386530","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.052526} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8bee1d0522db41acb4557b8660cad58e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bee1d0522db41acb4557b8660cad58e"} device-1 | {"level":"info","message":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? 200 17ms","method":"GET","requestID":"8bee1d0522db41acb4557b8660cad58e","responseTime":17,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8bee1d0522db41acb4557b8660cad58e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E","level":"info","message":"auth send jwt","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.229801,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to run experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to book experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully booked experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21bd9900-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.618972,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21bd9900-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21bd9900-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"d6faac42-adbf-4c14-9f7b-59d32287c6bc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.118427} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.955710125Z"}]},"request_id":"4e56b205-4577-4c3b-b0f1-c87f6c8184f7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.1189754} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"21bd9900-4911-11ef-863d-25b977f1d961","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? 200 14ms","method":"GET","requestID":"21bd4ae0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21bd9900-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? 200 13ms","method":"GET","requestID":"21bd9900-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Setting up experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully set up experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21c82050-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21c86e70-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21c931c0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully running experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.09184,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21c82050-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"21c82050-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.921503,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21c86e70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"21c86e70-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.77262,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0809d7bc-1121-4ce2-be91-e868565bbb9b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.200331} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21c931c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","rebac_allow":false,"scope_allow":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":"21c931c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"d5315f4e-0666-4d94-bfb4-cb0d4ebe25f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2028565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.955710125Z"}]},"request_id":"5fd06abe-0869-464f-bf45-c2c004542a78","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2054813} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"21c82050-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"21c86e70-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21c931c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling 200 26ms","method":"POST","requestID":"21c931c0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21c82050-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? 200 35ms","method":"GET","requestID":"21c82050-4911-11ef-863d-25b977f1d961","responseTime":35,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21c86e70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? 200 34ms","method":"GET","requestID":"21c86e70-4911-11ef-863d-25b977f1d961","responseTime":34,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21cdc5a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21ce3ad0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c3d2c14-94a9-4036-a3a4-0d536915db03#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c3d2c14-94a9-4036-a3a4-0d536915db03","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"4fd7d514-c143-43df-9a4a-02799169ee01","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2181833} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdefc69a-eb49-41a5-bbe5-a86daaad3f21","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2186124} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbc4dc9e-77dd-4384-8f65-5b7574cbfcca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2312524} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.975413,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21cdc5a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","rebac_allow":false,"scope_allow":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":"21cdc5a0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20ee95db-ba6c-4d6c-aeab-937c97b09e90","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2329915} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.335399,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21ce3ad0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","rebac_allow":false,"scope_allow":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":"21ce3ad0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 169ms","method":"POST","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57","responseTime":169,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21cdc5a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling 200 24ms","method":"POST","requestID":"21cdc5a0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21ce3ad0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling 200 22ms","method":"POST","requestID":"21ce3ad0-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E","level":"info","message":"auth send jwt","requestID":"db2f8f98dafee86249d63fc70b40823d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"db2f8f98dafee86249d63fc70b40823d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db2f8f98dafee86249d63fc70b40823d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21d23270-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22406,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"db2f8f98dafee86249d63fc70b40823d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db2f8f98dafee86249d63fc70b40823d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6f5125c-671e-4a79-b633-9db5525bfe79","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.252223} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.699888,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21d23270-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","rebac_allow":false,"scope_allow":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":"21d23270-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21d23270-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.904506836Z"}]},"request_id":"77211dea-7965-4794-8396-867859bdc0df","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2562733} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling 200 9ms","method":"POST","requestID":"21d23270-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db2f8f98dafee86249d63fc70b40823d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Building connection plan","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} 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":"dfee7529-f3a7-44bf-83c4-3ac073c39faa"},{"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":"7742140a-23b6-4ec4-9955-d719dc0dbe22"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"28834c43-9e33-403c-9b24-7cd1a86f19f0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db2f8f98dafee86249d63fc70b40823d"} gateway-1 | {"time_local":"23/Jul/2024:16:32:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db2f8f98dafee86249d63fc70b40823d"} device-1 | {"level":"info","message":"GET /devices/1302479d-7a3b-4f96-91fb-77236b608920? 200 16ms","method":"GET","requestID":"db2f8f98dafee86249d63fc70b40823d","responseTime":16,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.895993,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E","level":"info","message":"auth send jwt","requestID":"2d3813c5992e6a005f87f96864b29e3d"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21d4a370-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2d3813c5992e6a005f87f96864b29e3d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21d4a370-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d3813c5992e6a005f87f96864b29e3d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879451,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d3813c5992e6a005f87f96864b29e3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752340,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0MH0.lZpTBNwfltvASVp92Bs-UkFIKeHwcHq_0kRh6bUG98E"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2d3813c5992e6a005f87f96864b29e3d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:17.955710125Z"}]},"request_id":"f3384a05-4e4d-4e4f-93dc-bf76854f9cfa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.2755718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d3813c5992e6a005f87f96864b29e3d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"944a2985-03ce-42ef-b2e6-6feadc6b8ae2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.277066} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"724c96ea-166f-4517-b7e8-f5ec9658fc8b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.277234} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"21d4a370-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d3813c5992e6a005f87f96864b29e3d"} device-1 | {"level":"info","message":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? 200 11ms","method":"GET","requestID":"2d3813c5992e6a005f87f96864b29e3d","responseTime":11,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d3813c5992e6a005f87f96864b29e3d"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c'","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c'","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"21d4a370-4911-11ef-863d-25b977f1d961"} 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":"21d4a370-4911-11ef-863d-25b977f1d961","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":"21d4a370-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4c9701179c0e7ed53b5ef4c9f6a92a57"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21dce0d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3be88efb-72b4-49b6-9a48-039b4ddc3df1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.3219671} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.671661,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21dce0d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","rebac_allow":false,"scope_allow":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":"21dce0d0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21dce0d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling 200 8ms","method":"POST","requestID":"21dce0d0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21de6770-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3db6ceb-7c70-444f-ba76-dbc4ee13a75b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752340.331629} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.702884,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"21de6770-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","rebac_allow":false,"scope_allow":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":"21de6770-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21de6770-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling 200 8ms","method":"POST","requestID":"21de6770-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling"} device-1 | {"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7861180889005233434 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:bPiF\r\na=ice-pwd:P0dyt4y9kkSaKSKXzdB75/pe\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CF:9D:66:7D:9B:A4:AE:AF:E1:4D:95:51:82:1C:0B:2F:FF:77:3F:A8:28:2F:B5:9B:65:2A:3F:4B:F1:41:08:8B\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:454844113 1 udp 2113937151 6dbae079-7afb-4744-a245-1580d4cdd188.local 43272 typ host generation 0 ufrag bPiF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2285371330 1 udp 1677729535 141.24.211.56 43272 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bPiF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","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/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8443776750b794d69123a117fc1f985b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8443776750b794d69123a117fc1f985b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1'"} device-1 | {"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"}}},"level":"info","message":"received a callback","requestID":"8443776750b794d69123a117fc1f985b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"8443776750b794d69123a117fc1f985b","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"8443776750b794d69123a117fc1f985b"} device-1 | {"data":{"peerconnection":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","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/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e24bcdd876cb0e9b8aa1deb3cfa9dcff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e24bcdd876cb0e9b8aa1deb3cfa9dcff","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"}}},"level":"info","message":"received a callback","requestID":"e24bcdd876cb0e9b8aa1deb3cfa9dcff"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"231d2900-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13c802e8-9671-452e-bc70-31969c5d4c44","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.421415} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.05136,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"231d2900-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","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":"231d2900-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"231d2900-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c 200 9ms","method":"GET","requestID":"231d2900-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"e24bcdd876cb0e9b8aa1deb3cfa9dcff","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"e24bcdd876cb0e9b8aa1deb3cfa9dcff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23225920-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e0fa478-1aff-41b6-a63e-856abf8b5f69","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.457325} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.180555,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23225920-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","rebac_allow":false,"scope_allow":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":"23225920-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23225920-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling 200 12ms","method":"POST","requestID":"23225920-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2324a310-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cac72ab-b7ee-4c27-9686-85a31f3b0868","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.4712436} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.414705,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2324a310-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","rebac_allow":false,"scope_allow":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":"2324a310-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2324a310-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling 200 11ms","method":"POST","requestID":"2324a310-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg","level":"info","message":"auth send jwt","requestID":"fbc90597ab3df489794c3fe90c26091a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fbc90597ab3df489794c3fe90c26091a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","requestID":"fbc90597ab3df489794c3fe90c26091a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.089008,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fbc90597ab3df489794c3fe90c26091a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752342,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fbc90597ab3df489794c3fe90c26091a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","requestID":"fbc90597ab3df489794c3fe90c26091a"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbc90597ab3df489794c3fe90c26091a"} experiment-1 | {"level":"info","message":"GET /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03 200 16ms","method":"GET","requestID":"fbc90597ab3df489794c3fe90c26091a","responseTime":16,"status":200,"url":"/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg","level":"info","message":"auth send jwt","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"842471e17c9c39759a5ab3a58bbde4e7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.158431,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"842471e17c9c39759a5ab3a58bbde4e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752342,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"842471e17c9c39759a5ab3a58bbde4e7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Attempting to finish experiment","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"23321090-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.157699,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23321090-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752342,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23321090-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","device":"2e5a1795-c484-4a84-a333-4b0ff52862e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"1302479d-7a3b-4f96-91fb-77236b608920","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a3b140b-a7e6-4cb9-b965-d8f670f9d09c': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"5991c491-ff01-4384-8cad-5e40a9d50e12","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.5785913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bd20b07-03fc-43e7-854b-d21cdc607e7b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.57904} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dab0d45cb62820f15fd7b23b09ada4dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"dab0d45cb62820f15fd7b23b09ada4dd","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2fcdf14cca764d5be3b6b92df103cb4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"23321090-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"}}},"level":"info","message":"received a callback","requestID":"dab0d45cb62820f15fd7b23b09ada4dd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f2fcdf14cca764d5be3b6b92df103cb4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"}}},"level":"info","message":"received a callback","requestID":"f2fcdf14cca764d5be3b6b92df103cb4"} device-1 | {"data":{"peerconnection":"3a3b140b-a7e6-4cb9-b965-d8f670f9d09c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"23321090-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c 204 73ms","method":"DELETE","requestID":"23321090-4911-11ef-863d-25b977f1d961","responseTime":73,"status":204,"url":"/peerconnections/3a3b140b-a7e6-4cb9-b965-d8f670f9d09c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"},"level":"info","message":"Successfully finished experiment","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2340dda0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e5a1795-c484-4a84-a333-4b0ff52862e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5952567-d23d-4cdf-9262-49851bfdd0d2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.6573567} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.834044,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2340dda0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1","object_type":"device","rebac_allow":false,"scope_allow":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":"2340dda0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2340dda0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling 200 15ms","method":"POST","requestID":"2340dda0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c3d2c14-94a9-4036-a3a4-0d536915db03': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c3d2c14-94a9-4036-a3a4-0d536915db03","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"a9beb5c6-e09d-4b35-9175-617f54f6b50d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.6656702} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d3a9864-ace3-4e07-a069-8bc91a60785a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.6663315} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"842471e17c9c39759a5ab3a58bbde4e7","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2343c3d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1302479d-7a3b-4f96-91fb-77236b608920","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb8a8148-e8d5-4c87-96ec-58f94bc99a14","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.6754632} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.693849,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2343c3d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920","object_type":"device","rebac_allow":false,"scope_allow":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":"2343c3d0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2343c3d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling 200 13ms","method":"POST","requestID":"2343c3d0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/1302479d-7a3b-4f96-91fb-77236b608920/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.203","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"842471e17c9c39759a5ab3a58bbde4e7"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2838","request_time":"4.235","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b39af8b94b7f83722d40de519ad3af22"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03 204 198ms","method":"DELETE","requestID":"842471e17c9c39759a5ab3a58bbde4e7","responseTime":198,"status":204,"url":"/experiments/5c3d2c14-94a9-4036-a3a4-0d536915db03"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 157ms","method":"POST","requestID":"dab0d45cb62820f15fd7b23b09ada4dd","responseTime":157,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch","requestID":"dab0d45cb62820f15fd7b23b09ada4dd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"f2fcdf14cca764d5be3b6b92df103cb4","responseTime":159,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2fcdf14cca764d5be3b6b92df103cb4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg","level":"info","message":"auth send jwt","requestID":"0364cb6a17fb67346c5293e42a46f9f4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0364cb6a17fb67346c5293e42a46f9f4","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.754","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"44297e8cafef8eb2cb216affb5b4bfc1"} device-1 | {"level":"info","message":"postDevices called","requestID":"0364cb6a17fb67346c5293e42a46f9f4"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1302479d-7a3b-4f96-91fb-77236b608920' closed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.214015,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0364cb6a17fb67346c5293e42a46f9f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752342,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2e5a1795-c484-4a84-a333-4b0ff52862e1' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"37ed092b-6377-4686-8150-2a0ff19c68f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.769004} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"977ea0a9-f370-4b70-b099-abfc6df68795","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.7743993} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"7672379c-8a6e-4da8-9086-039173ab352c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.7836058} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3a95a01-ef19-4882-8074-0730fdd24537","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.7838426} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"86657c60-f873-4490-9225-c95667b87924","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.788515} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0364cb6a17fb67346c5293e42a46f9f4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0364cb6a17fb67346c5293e42a46f9f4"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"0364cb6a17fb67346c5293e42a46f9f4","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg","level":"info","message":"auth send jwt","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.109183,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752342,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Mn0.qc_IvZm7ZfkuZtCwGOeMWO2tUSi27t8W6cH-eOtZofg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"87e7c5d8-9607-4349-a89e-741e95aaa188","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.8116462} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"640896df-ec68-46fe-b4f1-7acd9efbe550","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.816352} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"99e771f8-c3a8-4249-b21c-fd5469351693","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.8319201} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b72ba3df-4188-47bc-adaa-f45a95367111","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.832124} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"63461c84-e637-47b3-b544-f1e8797f889b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752342.8366585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"e03f6cdb1b0ba269d29aef04c35c1f7f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"ddfd235aace7ae85a7982fa02b6a2e70"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ddfd235aace7ae85a7982fa02b6a2e70"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595663,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ddfd235aace7ae85a7982fa02b6a2e70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.528379,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"acf2ab71-43bc-4387-943d-77b1e1d595b7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.3284526} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"088a96c1-ba62-49c1-8a45-5ae5e8201b9d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.3290792} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46f89ecc-2ff8-4680-9aa3-f91f175e4569","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.3327892} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45883745-e3ed-46a9-8b7b-6e1d418a99fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.334068} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"c923adb0-1aaa-49d9-bff6-f2c53ef78884","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.3371253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cb07f200-719d-483c-9fe1-082c49014a42 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a"} device-1 | {"level":"info","message":"PATCH /devices/cb07f200-719d-483c-9fe1-082c49014a42 200 19ms","method":"PATCH","requestID":"fd14e086b37d60d3e4d06a95c5ed7f7a","responseTime":19,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"e95e2b4619e877665fc14495dc14c9f4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e95e2b4619e877665fc14495dc14c9f4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e95e2b4619e877665fc14495dc14c9f4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666911,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e95e2b4619e877665fc14495dc14c9f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e95e2b4619e877665fc14495dc14c9f4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"9a9dbcfd-ebd8-4790-82bb-d87f71a5d56b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.3479612} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ddfd235aace7ae85a7982fa02b6a2e70"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ddfd235aace7ae85a7982fa02b6a2e70"} device-1 | {"level":"info","message":"PATCH /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041 200 31ms","method":"PATCH","requestID":"ddfd235aace7ae85a7982fa02b6a2e70","responseTime":31,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"271b19b4615faef58719b36fa423b418"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"271b19b4615faef58719b36fa423b418","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"271b19b4615faef58719b36fa423b418"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634066,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"271b19b4615faef58719b36fa423b418","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"271b19b4615faef58719b36fa423b418","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e95e2b4619e877665fc14495dc14c9f4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e95e2b4619e877665fc14495dc14c9f4"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/websocket 200 17ms","method":"POST","requestID":"e95e2b4619e877665fc14495dc14c9f4","responseTime":17,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"271b19b4615faef58719b36fa423b418"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"271b19b4615faef58719b36fa423b418"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/websocket 200 15ms","method":"POST","requestID":"271b19b4615faef58719b36fa423b418","responseTime":15,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"423154e812c9101bb89188448965d351"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"423154e812c9101bb89188448965d351","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"423154e812c9101bb89188448965d351"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.372272,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"423154e812c9101bb89188448965d351","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"423154e812c9101bb89188448965d351","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"f1f81071-06aa-422f-b3d7-fa58d07fc077","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.403032} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"423154e812c9101bb89188448965d351","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"423154e812c9101bb89188448965d351"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"423154e812c9101bb89188448965d351"} device-1 | {"level":"info","message":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? 200 11ms","method":"GET","requestID":"423154e812c9101bb89188448965d351","responseTime":11,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"cbfee08663c1fca10131692c47102554"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cbfee08663c1fca10131692c47102554","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbfee08663c1fca10131692c47102554"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716209,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cbfee08663c1fca10131692c47102554","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbfee08663c1fca10131692c47102554","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"7b98678f-0a05-4539-8dcd-5bd8daa21c48","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.4187453} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cbfee08663c1fca10131692c47102554","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbfee08663c1fca10131692c47102554"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbfee08663c1fca10131692c47102554"} device-1 | {"level":"info","message":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? 200 10ms","method":"GET","requestID":"cbfee08663c1fca10131692c47102554","responseTime":10,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"3cf812cb052d669599ae8c202a3e0d60"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3cf812cb052d669599ae8c202a3e0d60","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3cf812cb052d669599ae8c202a3e0d60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.66527,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cf812cb052d669599ae8c202a3e0d60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3cf812cb052d669599ae8c202a3e0d60","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to run experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to book experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully booked experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23bb8be0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23bbda00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651716,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23bb8be0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"23bb8be0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692739,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23bbda00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"23bbda00-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"2fc35003-515d-480a-a07b-5884d51f9d23","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.4617233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"23bb8be0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"bc26df5f-c4a6-47f0-baee-aa9fdd2ef24e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.4625332} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"23bbda00-4911-11ef-863d-25b977f1d961","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23bb8be0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? 200 12ms","method":"GET","requestID":"23bb8be0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23bbda00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? 200 10ms","method":"GET","requestID":"23bbda00-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Setting up experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully set up experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23c242a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23c269b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c290c0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully running experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637095,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c242a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23c242a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586029,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c269b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23c269b0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"80a0d9a8-5d49-47df-9013-12dda02af253","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.508989} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"fd1c46d7-711a-48cb-b24f-aad7758a1cf0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5097566} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23c242a0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45896","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23c269b0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f0d2d99-48c2-4d99-851e-f57cf09690f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5123029} authorization-1 | {"client_addr":"127.0.0.1:45896","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.314233,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c290c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","rebac_allow":false,"scope_allow":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":"23c290c0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23c242a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? 200 18ms","method":"GET","requestID":"23c242a0-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23c269b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? 200 18ms","method":"GET","requestID":"23c269b0-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c290c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling 200 18ms","method":"POST","requestID":"23c290c0-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c576f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3689d201-ba14-4e48-ba9f-789933b95c80#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3689d201-ba14-4e48-ba9f-789933b95c80","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"fee0eb5a-1624-4c98-8e68-183405f93b1a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5201352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffeca908-8f67-4cbb-82f7-7d85a446488f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5204637} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c5c510-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3cf812cb052d669599ae8c202a3e0d60","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8be56a5-3bef-4b9d-94ad-4ca514865eb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5246313} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.796717,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c576f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","rebac_allow":false,"scope_allow":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":"23c576f0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b96e533a-c424-47ce-9d3b-cb161951dd43","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5266428} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.655728,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c5c510-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","rebac_allow":false,"scope_allow":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":"23c5c510-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3cf812cb052d669599ae8c202a3e0d60"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"level":"info","message":"POST /experiments? 201 103ms","method":"POST","requestID":"3cf812cb052d669599ae8c202a3e0d60","responseTime":103,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c576f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling 200 11ms","method":"POST","requestID":"23c576f0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c5c510-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling 200 10ms","method":"POST","requestID":"23c5c510-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c772c0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"440e3f6d93dfaa0a5f59646f00e7da27"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"440e3f6d93dfaa0a5f59646f00e7da27","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"440e3f6d93dfaa0a5f59646f00e7da27"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.61787,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c7249f6-0662-48d7-9a11-aeda397ec862","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.536456} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"440e3f6d93dfaa0a5f59646f00e7da27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"440e3f6d93dfaa0a5f59646f00e7da27","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.589664,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c772c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","rebac_allow":false,"scope_allow":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":"23c772c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.783584596Z"}]},"request_id":"37119129-28d3-427a-810a-e5df81c51955","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5406542} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c772c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling 200 9ms","method":"POST","requestID":"23c772c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"440e3f6d93dfaa0a5f59646f00e7da27","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Building connection plan","requestID":"3cf812cb052d669599ae8c202a3e0d60"} 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":"4651c829-c58f-47c3-9cdf-da5e87cc14b6"},{"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":"177896c4-a9a7-4d6c-88c3-f2a165755de5"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"205b67a8-c37d-4ab1-8384-662a73f54453"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3cf812cb052d669599ae8c202a3e0d60"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3cf812cb052d669599ae8c202a3e0d60"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"440e3f6d93dfaa0a5f59646f00e7da27"} device-1 | {"level":"info","message":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? 200 11ms","method":"GET","requestID":"440e3f6d93dfaa0a5f59646f00e7da27","responseTime":11,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb07f200-719d-483c-9fe1-082c49014a42? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"440e3f6d93dfaa0a5f59646f00e7da27"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.707614,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23c92070-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"23c92070-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU","level":"info","message":"auth send jwt","requestID":"35eb7982ce3e4c549585733d75b45c23"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"35eb7982ce3e4c549585733d75b45c23","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35eb7982ce3e4c549585733d75b45c23"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.03877,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35eb7982ce3e4c549585733d75b45c23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752343,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0M30.ouTV9rynVs4LRQzwlSWbhpBDRI6VP6eqK9wUZ-0a7lU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35eb7982ce3e4c549585733d75b45c23","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"61476709-5806-4f9b-a12d-4e779d366576","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5552757} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"895e8120-39dc-4436-bfd8-ea73279528fe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.5556734} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"23c92070-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:22.831896493Z"}]},"request_id":"5fcc8c4c-870d-4059-bd51-902cf949b7d9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.559028} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35eb7982ce3e4c549585733d75b45c23","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9'","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35eb7982ce3e4c549585733d75b45c23"} device-1 | {"level":"info","message":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? 200 20ms","method":"GET","requestID":"35eb7982ce3e4c549585733d75b45c23","responseTime":20,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"35eb7982ce3e4c549585733d75b45c23"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9'","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"23c92070-4911-11ef-863d-25b977f1d961"} 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":"23c92070-4911-11ef-863d-25b977f1d961","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":"23c92070-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3cf812cb052d669599ae8c202a3e0d60"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23d136c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"188f791a-8c55-467d-9431-94b3853a9b75","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.601173} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.84928,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23d136c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","rebac_allow":false,"scope_allow":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":"23d136c0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23d136c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling 200 9ms","method":"POST","requestID":"23d136c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23d2e470-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cd5d0df-ef85-44a8-a8bc-36ded622af25","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752343.6117175} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.204269,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"23d2e470-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","rebac_allow":false,"scope_allow":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":"23d2e470-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23d2e470-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling 200 8ms","method":"POST","requestID":"23d2e470-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling"} device-1 | {"device":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/d0b32c60-2268-4829-8833-bd1cd382fbd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8342e88273718d6fd1cde51d5fdef11","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f8342e88273718d6fd1cde51d5fdef11","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"}}},"level":"info","message":"received a callback","requestID":"f8342e88273718d6fd1cde51d5fdef11"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f8342e88273718d6fd1cde51d5fdef11","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"f8342e88273718d6fd1cde51d5fdef11"} device-1 | {"device":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d0b32c60-2268-4829-8833-bd1cd382fbd9","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/d0b32c60-2268-4829-8833-bd1cd382fbd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dfeb34333b9bd9cfd4a443818b7ab78f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"dfeb34333b9bd9cfd4a443818b7ab78f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"}}},"level":"info","message":"received a callback","requestID":"dfeb34333b9bd9cfd4a443818b7ab78f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"250ff850-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0b32c60-2268-4829-8833-bd1cd382fbd9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"070cf970-1f76-49c5-8030-009c8c005812","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.6921594} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.595568,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"250ff850-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9","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":"250ff850-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"250ff850-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9 200 12ms","method":"GET","requestID":"250ff850-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"dfeb34333b9bd9cfd4a443818b7ab78f","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"dfeb34333b9bd9cfd4a443818b7ab78f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"251612d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e1ff0a5-e573-484d-ad90-ad8c6be8a9b3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.7311192} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.786335,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"251612d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","rebac_allow":false,"scope_allow":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":"251612d0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"251612d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling 200 12ms","method":"POST","requestID":"251612d0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25185cc0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5408d57-99cf-4d85-bc42-458538310c47","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.7463033} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.967797,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25185cc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","rebac_allow":false,"scope_allow":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":"25185cc0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25185cc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling 200 14ms","method":"POST","requestID":"25185cc0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY","level":"info","message":"auth send jwt","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3689d201-ba14-4e48-ba9f-789933b95c80","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.265482,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0e1acd72249d8c1c541e41b93d4bbbbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752345,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3689d201-ba14-4e48-ba9f-789933b95c80","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd"} experiment-1 | {"level":"info","message":"GET /experiments/3689d201-ba14-4e48-ba9f-789933b95c80 200 17ms","method":"GET","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd","responseTime":17,"status":200,"url":"/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"} gateway-1 | {"time_local":"23/Jul/2024:16:32:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3689d201-ba14-4e48-ba9f-789933b95c80 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e1acd72249d8c1c541e41b93d4bbbbd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY","level":"info","message":"auth send jwt","requestID":"8a8889d815ca893a35b4d5558192435c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8a8889d815ca893a35b4d5558192435c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3689d201-ba14-4e48-ba9f-789933b95c80","requestID":"8a8889d815ca893a35b4d5558192435c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.274383,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8a8889d815ca893a35b4d5558192435c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752345,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a8889d815ca893a35b4d5558192435c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Attempting to finish experiment","requestID":"8a8889d815ca893a35b4d5558192435c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"25241c90-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.16469,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25241c90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752345,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25241c90-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb07f200-719d-483c-9fe1-082c49014a42","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"46b3a31d-73eb-48ea-82b7-8c09d5b9f041","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/d0b32c60-2268-4829-8833-bd1cd382fbd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0b32c60-2268-4829-8833-bd1cd382fbd9': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd0b32c60-2268-4829-8833-bd1cd382fbd9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"9fd43d20-c496-4c42-a000-fcad8f41dbfd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.842661} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"73e98079cd845a26d2a635d354dd2337","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c1b8d56-2de3-4546-afe6-87882fad8dc9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.8432035} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"73e98079cd845a26d2a635d354dd2337","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"25241c90-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ebf0e5488bd6c85005c077289f36e723","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"}}},"level":"info","message":"received a callback","requestID":"73e98079cd845a26d2a635d354dd2337"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ebf0e5488bd6c85005c077289f36e723","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"}}},"level":"info","message":"received a callback","requestID":"ebf0e5488bd6c85005c077289f36e723"} device-1 | {"data":{"peerconnection":"d0b32c60-2268-4829-8833-bd1cd382fbd9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"25241c90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9 204 48ms","method":"DELETE","requestID":"25241c90-4911-11ef-863d-25b977f1d961","responseTime":48,"status":204,"url":"/peerconnections/d0b32c60-2268-4829-8833-bd1cd382fbd9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"},"level":"info","message":"Successfully finished experiment","requestID":"8a8889d815ca893a35b4d5558192435c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"252f1910-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b3a31d-73eb-48ea-82b7-8c09d5b9f041","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f107b36-1418-46f5-aea9-70efee9c5017","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.8968873} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.981197,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"252f1910-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041","object_type":"device","rebac_allow":false,"scope_allow":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":"252f1910-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"252f1910-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling 200 15ms","method":"POST","requestID":"252f1910-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2531d830-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3689d201-ba14-4e48-ba9f-789933b95c80': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3689d201-ba14-4e48-ba9f-789933b95c80","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"577caeb1-4a45-4af6-8d22-4c1488d0390b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.9091136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76b49db7-26c9-4425-9aed-51f56e88c8d3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.9094903} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"8a8889d815ca893a35b4d5558192435c","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb07f200-719d-483c-9fe1-082c49014a42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fb3dc15-bf9a-450b-adb5-b182664ab168","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752345.915134} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.233524,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2531d830-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb07f200-719d-483c-9fe1-082c49014a42","object_type":"device","rebac_allow":false,"scope_allow":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":"2531d830-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2531d830-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling 200 14ms","method":"POST","requestID":"2531d830-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/cb07f200-719d-483c-9fe1-082c49014a42/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3689d201-ba14-4e48-ba9f-789933b95c80","requestID":"8a8889d815ca893a35b4d5558192435c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3689d201-ba14-4e48-ba9f-789933b95c80 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a8889d815ca893a35b4d5558192435c"} experiment-1 | {"level":"info","message":"DELETE /experiments/3689d201-ba14-4e48-ba9f-789933b95c80 204 174ms","method":"DELETE","requestID":"8a8889d815ca893a35b4d5558192435c","responseTime":174,"status":204,"url":"/experiments/3689d201-ba14-4e48-ba9f-789933b95c80"} gateway-1 | {"time_local":"23/Jul/2024:16:32:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.613","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a20104b6b3800d7259c08ea1bf471c71"} gateway-1 | {"time_local":"23/Jul/2024:16:32:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.604","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"81e9f85d683b72eea630a78759fdafd5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"73e98079cd845a26d2a635d354dd2337","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"73e98079cd845a26d2a635d354dd2337"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"ebf0e5488bd6c85005c077289f36e723","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"ebf0e5488bd6c85005c077289f36e723"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY","level":"info","message":"auth send jwt","requestID":"0b0fe5984f987e24819340d5883586a2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b0fe5984f987e24819340d5883586a2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0b0fe5984f987e24819340d5883586a2"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/46b3a31d-73eb-48ea-82b7-8c09d5b9f041' closed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.853136,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0b0fe5984f987e24819340d5883586a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752345,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0NX0.IwhmszSdcKiXNYDYamgh1lqI2aNYAuA32zYFgQwQKUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","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/cb07f200-719d-483c-9fe1-082c49014a42' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5fcf172f-d4e5-423a-8dfa-9c30e420f46c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0037374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b4c9e90-f8b9-479d-818c-afffbd0e9295","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0096512} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"3fc49f56-0c38-4cfb-b468-7b44e985e5d0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.021027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7207f8c1-4c6f-4fcf-afed-b558262cb87c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.021188} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"c20303c1-9259-477f-b639-f920dc12fe91","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0266373} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0b0fe5984f987e24819340d5883586a2"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b0fe5984f987e24819340d5883586a2"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"0b0fe5984f987e24819340d5883586a2","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"0983592c8b9e3117957cfde2ceaf7bf1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0983592c8b9e3117957cfde2ceaf7bf1"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.781776,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0983592c8b9e3117957cfde2ceaf7bf1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"24b6c2b0-dc2e-48af-83b4-0f81534df518","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.057483} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"131c79e7-493a-4067-8dd9-d0ecfa35bdf9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0624058} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"368c45ad-34c6-4f48-8aa9-727f6a852d5c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.07391} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8db079db-df13-4d81-b266-9f00da372da4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0741675} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"2534981f-c3b3-479b-bbfd-112e7b494b58","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.0784848} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0983592c8b9e3117957cfde2ceaf7bf1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0983592c8b9e3117957cfde2ceaf7bf1"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"0983592c8b9e3117957cfde2ceaf7bf1","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"bb00f3d9d867df57116f034cdaf615a1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"bb00f3d9d867df57116f034cdaf615a1","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"c8cae0375bb901208bb1de20a029dbef"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bb00f3d9d867df57116f034cdaf615a1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c8cae0375bb901208bb1de20a029dbef","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c8cae0375bb901208bb1de20a029dbef"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691703,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bb00f3d9d867df57116f034cdaf615a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb00f3d9d867df57116f034cdaf615a1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.583671,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c8cae0375bb901208bb1de20a029dbef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c8cae0375bb901208bb1de20a029dbef","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"932028f3-e2e4-4392-ae1c-71514840adfb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.5718827} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bb00f3d9d867df57116f034cdaf615a1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"b83be079-3595-4a47-b9fb-0ea58621711e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.572841} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8cae0375bb901208bb1de20a029dbef","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5db86c0-439b-47fe-8430-ed93fcd83c9b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.5772655} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bb00f3d9d867df57116f034cdaf615a1","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bbdf022-694f-4ad5-bb95-308478e820b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.5789711} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c8cae0375bb901208bb1de20a029dbef","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"b723cdf1-f52f-43fb-bb97-e069ee943d8a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.5823972} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8cae0375bb901208bb1de20a029dbef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c8cae0375bb901208bb1de20a029dbef"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c8cae0375bb901208bb1de20a029dbef"} device-1 | {"level":"info","message":"PATCH /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05 200 26ms","method":"PATCH","requestID":"c8cae0375bb901208bb1de20a029dbef","responseTime":26,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"597102bbf6f6491491bc8288513bfce2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"597102bbf6f6491491bc8288513bfce2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"597102bbf6f6491491bc8288513bfce2"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624878,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"597102bbf6f6491491bc8288513bfce2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"597102bbf6f6491491bc8288513bfce2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"9bfa07b0-bec3-427f-b06f-9d41d8761f7a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.5951834} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb00f3d9d867df57116f034cdaf615a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bb00f3d9d867df57116f034cdaf615a1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/86234beb-f87a-4678-993b-d1bd867226a2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bb00f3d9d867df57116f034cdaf615a1"} device-1 | {"level":"info","message":"PATCH /devices/86234beb-f87a-4678-993b-d1bd867226a2 200 42ms","method":"PATCH","requestID":"bb00f3d9d867df57116f034cdaf615a1","responseTime":42,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"f8d1896929619e1f49e3e5f8670dac25"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f8d1896929619e1f49e3e5f8670dac25","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f8d1896929619e1f49e3e5f8670dac25"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663871,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f8d1896929619e1f49e3e5f8670dac25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f8d1896929619e1f49e3e5f8670dac25","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"597102bbf6f6491491bc8288513bfce2"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/websocket 200 18ms","method":"POST","requestID":"597102bbf6f6491491bc8288513bfce2","responseTime":18,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"597102bbf6f6491491bc8288513bfce2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f8d1896929619e1f49e3e5f8670dac25"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/websocket 200 15ms","method":"POST","requestID":"f8d1896929619e1f49e3e5f8670dac25","responseTime":15,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f8d1896929619e1f49e3e5f8670dac25"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"14fb5c6ee138cf78b67de80b6a6372f9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"14fb5c6ee138cf78b67de80b6a6372f9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14fb5c6ee138cf78b67de80b6a6372f9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647349,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"14fb5c6ee138cf78b67de80b6a6372f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14fb5c6ee138cf78b67de80b6a6372f9","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"980dbc42-d71a-487f-9457-0c368478f071","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.656831} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14fb5c6ee138cf78b67de80b6a6372f9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14fb5c6ee138cf78b67de80b6a6372f9"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14fb5c6ee138cf78b67de80b6a6372f9"} device-1 | {"level":"info","message":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? 200 15ms","method":"GET","requestID":"14fb5c6ee138cf78b67de80b6a6372f9","responseTime":15,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"a95c5a35d7934f52e2b6e636842578e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a95c5a35d7934f52e2b6e636842578e1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a95c5a35d7934f52e2b6e636842578e1"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171407,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a95c5a35d7934f52e2b6e636842578e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a95c5a35d7934f52e2b6e636842578e1","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"16fecb95-88c0-48a2-a3c5-594bc532457f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.680598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a95c5a35d7934f52e2b6e636842578e1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a95c5a35d7934f52e2b6e636842578e1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a95c5a35d7934f52e2b6e636842578e1"} device-1 | {"level":"info","message":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? 200 18ms","method":"GET","requestID":"a95c5a35d7934f52e2b6e636842578e1","responseTime":18,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.16826,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to run experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to book experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully booked experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25b0f340-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25b14160-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065663,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25b0f340-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25b0f340-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.82876,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25b14160-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25b14160-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"dc8d7f9b-efa8-4198-bcab-4f5b0e1e64b3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.7518404} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"25b0f340-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"5bf1f8ee-6c6f-4aa2-8aa4-cff37148fcd1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.753207} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"25b14160-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25b0f340-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? 200 23ms","method":"GET","requestID":"25b0f340-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25b14160-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? 200 23ms","method":"GET","requestID":"25b14160-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Setting up experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully set up experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25bc8c00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25bcb310-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25bd0130-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully running experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.409774,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.903201,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:45896","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25bc8c00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"25bc8c00-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25bcb310-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"25bcb310-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45896","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.692244,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32b20f1b-95ed-4b16-81a1-eaff0a8f1c98","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8267167} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25bd0130-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","rebac_allow":false,"scope_allow":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":"25bd0130-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"aea732e2-67f0-402d-89c8-4ab7551e6e26","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8333325} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25bd0130-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling 200 19ms","method":"POST","requestID":"25bd0130-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"25bc8c00-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"f8282545-e897-4aff-93f8-61839a9d6c84","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8387773} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"25bcb310-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25c0d1c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25bc8c00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? 200 32ms","method":"GET","requestID":"25bc8c00-4911-11ef-863d-25b977f1d961","responseTime":32,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25bcb310-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? 200 32ms","method":"GET","requestID":"25bcb310-4911-11ef-863d-25b977f1d961","responseTime":32,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4338432d-aa66-457f-af63-d5f93f57a9a4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8511593} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76ba359a-b231-4423-8939-b3fcf1fd62fb#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76ba359a-b231-4423-8939-b3fcf1fd62fb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"9e6aee12-0827-44c9-8ca0-87df5366cd6b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.852167} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.789073,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25c20a40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25c0d1c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","rebac_allow":false,"scope_allow":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":"25c0d1c0-4911-11ef-863d-25b977f1d961","responseTime":8,"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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80643ee3-8ec4-4426-a681-d824bc439278","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8534114} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25c0d1c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling 200 13ms","method":"POST","requestID":"25c0d1c0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cedf926-3a9a-4b21-aab8-d41180883260","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8595586} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.813687,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25c20a40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","rebac_allow":false,"scope_allow":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":"25c20a40-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25c20a40-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling 200 13ms","method":"POST","requestID":"25c20a40-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"level":"info","message":"POST /experiments? 201 171ms","method":"POST","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56","responseTime":171,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25c4a250-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"4b1c22e26c2c8e82038aa37f6b317455"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4b1c22e26c2c8e82038aa37f6b317455","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b1c22e26c2c8e82038aa37f6b317455"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24997b88-f02f-4433-bba1-50fda52f5ddf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8739367} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.864167,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25c4a250-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","rebac_allow":false,"scope_allow":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":"25c4a250-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:47540","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970113,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4b1c22e26c2c8e82038aa37f6b317455","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b1c22e26c2c8e82038aa37f6b317455","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25c4a250-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling 200 11ms","method":"POST","requestID":"25c4a250-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.021002149Z"}]},"request_id":"f4954d6e-1154-46d9-8623-bd919768040b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8806176} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Building connection plan","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} 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":"f901637e-b80c-4bf5-8c66-6b2aa2b2420b"},{"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":"9cee0f52-11dd-4685-9cc2-62cd945b9107"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3aa85a2e-8ac9-4945-8ae6-ddfeaf49e6dd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4b1c22e26c2c8e82038aa37f6b317455","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b1c22e26c2c8e82038aa37f6b317455"} device-1 | {"level":"info","message":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? 200 13ms","method":"GET","requestID":"4b1c22e26c2c8e82038aa37f6b317455","responseTime":13,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/86234beb-f87a-4678-993b-d1bd867226a2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b1c22e26c2c8e82038aa37f6b317455"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.86533,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25c6c530-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"25c6c530-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0","level":"info","message":"auth send jwt","requestID":"88e8d9a991d95bbd5493e76535b4eebb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"88e8d9a991d95bbd5493e76535b4eebb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88e8d9a991d95bbd5493e76535b4eebb"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831565,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"88e8d9a991d95bbd5493e76535b4eebb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752346,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0Nn0.FiFHD0MO-_g4muRExEEn_btnYp8GOsU3q4WzgYP-KY0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88e8d9a991d95bbd5493e76535b4eebb","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c577d279-203b-4472-88e4-b883d468c157","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8973737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d55b61e6-0aa9-41ea-a5b0-4f1775edce4f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.8976219} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"25c6c530-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:26.073886976Z"}]},"request_id":"13811028-01ff-4fd7-a7ed-8366df327012","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.9018972} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"88e8d9a991d95bbd5493e76535b4eebb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f'","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f'","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} 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":"25c6c530-4911-11ef-863d-25b977f1d961","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88e8d9a991d95bbd5493e76535b4eebb"} device-1 | {"level":"info","message":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? 200 22ms","method":"GET","requestID":"88e8d9a991d95bbd5493e76535b4eebb","responseTime":22,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88e8d9a991d95bbd5493e76535b4eebb"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"25c6c530-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a4670bf26ae3a0fa7f7cfc50e636ea56"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25cf9ed0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60e21d07-336e-4909-ac50-f4bd8539c2cd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.9466143} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.592989,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25cf9ed0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","rebac_allow":false,"scope_allow":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":"25cf9ed0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25cf9ed0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling 200 10ms","method":"POST","requestID":"25cf9ed0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25d17390-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c486aed-c507-42bf-b533-13efc1c7c2fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752346.9583604} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.541975,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"25d17390-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","rebac_allow":false,"scope_allow":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":"25d17390-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25d17390-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling 200 10ms","method":"POST","requestID":"25d17390-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling"} device-1 | {"device":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/5e014059-2ae2-4b1d-be84-64778d4cf77f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09c06886f242da2c4524b1073f9822a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"09c06886f242da2c4524b1073f9822a3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"}}},"level":"info","message":"received a callback","requestID":"09c06886f242da2c4524b1073f9822a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"09c06886f242da2c4524b1073f9822a3","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"09c06886f242da2c4524b1073f9822a3"} device-1 | {"device":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5e014059-2ae2-4b1d-be84-64778d4cf77f","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/5e014059-2ae2-4b1d-be84-64778d4cf77f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5463f04bb38b7822ef2abce47cd637a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5463f04bb38b7822ef2abce47cd637a5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"}}},"level":"info","message":"received a callback","requestID":"5463f04bb38b7822ef2abce47cd637a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"270d9d10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5e014059-2ae2-4b1d-be84-64778d4cf77f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d8d8497-1861-48d3-b95a-729ea5ddb67b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.031316} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.024779,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"270d9d10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f","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":"270d9d10-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"270d9d10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f 200 11ms","method":"GET","requestID":"270d9d10-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"5463f04bb38b7822ef2abce47cd637a5","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"5463f04bb38b7822ef2abce47cd637a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"27139080-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1772f254-5c34-44c1-90a7-d1c351385e58","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.0713072} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.878008,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"27139080-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","rebac_allow":false,"scope_allow":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":"27139080-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"27139080-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling 200 14ms","method":"POST","requestID":"27139080-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"27162890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fae0a8de-7f8c-4982-89b1-62ee9ffa8473","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.0878417} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.615625,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"27162890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","rebac_allow":false,"scope_allow":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":"27162890-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"27162890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling 200 13ms","method":"POST","requestID":"27162890-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI","level":"info","message":"auth send jwt","requestID":"1eaf3842709162147e3e16f8d83bfbaa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1eaf3842709162147e3e16f8d83bfbaa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","requestID":"1eaf3842709162147e3e16f8d83bfbaa"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.129614,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1eaf3842709162147e3e16f8d83bfbaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752349,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1eaf3842709162147e3e16f8d83bfbaa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","requestID":"1eaf3842709162147e3e16f8d83bfbaa"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1eaf3842709162147e3e16f8d83bfbaa"} experiment-1 | {"level":"info","message":"GET /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb 200 13ms","method":"GET","requestID":"1eaf3842709162147e3e16f8d83bfbaa","responseTime":13,"status":200,"url":"/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI","level":"info","message":"auth send jwt","requestID":"f52f14f297a305f08dcf6864904e6340"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f52f14f297a305f08dcf6864904e6340","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","requestID":"f52f14f297a305f08dcf6864904e6340"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.827191,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f52f14f297a305f08dcf6864904e6340","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752349,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f52f14f297a305f08dcf6864904e6340","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Attempting to finish experiment","requestID":"f52f14f297a305f08dcf6864904e6340"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"272061c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.795866,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"272061c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752349,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"272061c0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"0a5096b3-5e08-459c-bd0c-305ab9eacf05","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"86234beb-f87a-4678-993b-d1bd867226a2","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/5e014059-2ae2-4b1d-be84-64778d4cf77f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5e014059-2ae2-4b1d-be84-64778d4cf77f","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5e014059-2ae2-4b1d-be84-64778d4cf77f': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5e014059-2ae2-4b1d-be84-64778d4cf77f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"9bebb422-45a0-4eac-877e-17451354729d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.1695442} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1709f59d-2360-4c0d-84cd-7a8ca070e904","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.1702077} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"272061c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78c02d539016cecc2e0b3bb53ad43f17","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"78c02d539016cecc2e0b3bb53ad43f17","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fbe465a674e01d45bc531fb31d4d48fc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"fbe465a674e01d45bc531fb31d4d48fc","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"}}},"level":"info","message":"received a callback","requestID":"78c02d539016cecc2e0b3bb53ad43f17"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"}}},"level":"info","message":"received a callback","requestID":"fbe465a674e01d45bc531fb31d4d48fc"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"272061c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f 204 42ms","method":"DELETE","requestID":"272061c0-4911-11ef-863d-25b977f1d961","responseTime":42,"status":204,"url":"/peerconnections/5e014059-2ae2-4b1d-be84-64778d4cf77f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"},"level":"info","message":"Successfully finished experiment","requestID":"f52f14f297a305f08dcf6864904e6340"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"272a25c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5096b3-5e08-459c-bd0c-305ab9eacf05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f84e76c8-4f4c-42e2-80a7-9b856f2e57dc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.219318} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.836562,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"272a25c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05","object_type":"device","rebac_allow":false,"scope_allow":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":"272a25c0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"272a25c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling 200 14ms","method":"POST","requestID":"272a25c0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76ba359a-b231-4423-8939-b3fcf1fd62fb': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76ba359a-b231-4423-8939-b3fcf1fd62fb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"15b9729b-aacc-4643-95db-26a2feeda8bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.2266235} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"524be9b2-b20c-4c44-bbdd-2503e2fa80b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.2271287} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"272cbdd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f52f14f297a305f08dcf6864904e6340","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86234beb-f87a-4678-993b-d1bd867226a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01c35c9b-aa77-430a-88b0-af6013b25d61","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.2373846} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.071692,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"272cbdd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86234beb-f87a-4678-993b-d1bd867226a2","object_type":"device","rebac_allow":false,"scope_allow":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":"272cbdd0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"272cbdd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling 200 13ms","method":"POST","requestID":"272cbdd0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/86234beb-f87a-4678-993b-d1bd867226a2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb","requestID":"f52f14f297a305f08dcf6864904e6340"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f52f14f297a305f08dcf6864904e6340"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.679","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"55296ae61a578ae047ae3c1d7aa24dd9"} experiment-1 | {"level":"info","message":"DELETE /experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb 204 162ms","method":"DELETE","requestID":"f52f14f297a305f08dcf6864904e6340","responseTime":162,"status":204,"url":"/experiments/76ba359a-b231-4423-8939-b3fcf1fd62fb"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.689","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a943616ad82de80fc993bca03e5214ba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"78c02d539016cecc2e0b3bb53ad43f17","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"78c02d539016cecc2e0b3bb53ad43f17"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"fbe465a674e01d45bc531fb31d4d48fc","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"fbe465a674e01d45bc531fb31d4d48fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI","level":"info","message":"auth send jwt","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0a5096b3-5e08-459c-bd0c-305ab9eacf05' closed"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.899324,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752349,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","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/86234beb-f87a-4678-993b-d1bd867226a2' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1494b98e-88d3-4496-9f2d-0ffc66769b57","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3264008} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff84a738-7cbb-44b4-8a03-b521faf39746","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3321288} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"439b18b7-52cd-4dc4-9ead-2f723b96e983","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3422053} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"083a0cf2-15fa-4ed6-9091-a7c8713dd932","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3423965} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.342178901Z"}]},"request_id":"00df461b-2655-4406-bef1-c1fb59d26032","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3534536} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"19d85f9c0f4fcbde0683524fc0f2bd04","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI","level":"info","message":"auth send jwt","requestID":"cba64d238c8ed936bee9658b9b518fdd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cba64d238c8ed936bee9658b9b518fdd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cba64d238c8ed936bee9658b9b518fdd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.725214,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"cba64d238c8ed936bee9658b9b518fdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752349,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM0OX0.UFtMJLRd4gbihlSj2d4EbQzn9QTAWTn58DQDSGWUMtI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e2da669a-b642-477e-acb8-5690014791a1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3836358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67f97fe3-0180-457a-8efd-999748d0c7f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.3896437} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5735b372-8879-4ee6-9329-b0cd66530103","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.405585} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b43034e-53c6-44e6-a64d-a93aa778bb11","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.405862} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.405555041Z"}]},"request_id":"600760ef-de12-4e5b-a4cd-5205ecb4d64b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752349.4098568} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cba64d238c8ed936bee9658b9b518fdd"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"cba64d238c8ed936bee9658b9b518fdd","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cba64d238c8ed936bee9658b9b518fdd"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0926bf6a705320b89d82aec4df2efffd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0926bf6a705320b89d82aec4df2efffd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/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":"0926bf6a705320b89d82aec4df2efffd"} device-1 | {"level":"info","message":"OPTIONS /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/websocket 200 1ms","method":"OPTIONS","requestID":"0926bf6a705320b89d82aec4df2efffd","responseTime":1,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2fdd52866b4b9c5c728c852cf6403b2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b2fdd52866b4b9c5c728c852cf6403b2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/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":"b2fdd52866b4b9c5c728c852cf6403b2"} device-1 | {"level":"info","message":"OPTIONS /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/websocket 200 1ms","method":"OPTIONS","requestID":"b2fdd52866b4b9c5c728c852cf6403b2","responseTime":1,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"af736c33831b22ca5f6c9ac5e02a9f02"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"af736c33831b22ca5f6c9ac5e02a9f02","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"af736c33831b22ca5f6c9ac5e02a9f02"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"dfdbd3060f16a65f6fe50da66f64a36d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dfdbd3060f16a65f6fe50da66f64a36d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dfdbd3060f16a65f6fe50da66f64a36d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.453026,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"af736c33831b22ca5f6c9ac5e02a9f02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af736c33831b22ca5f6c9ac5e02a9f02","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172477,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"dfdbd3060f16a65f6fe50da66f64a36d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dfdbd3060f16a65f6fe50da66f64a36d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"af736c33831b22ca5f6c9ac5e02a9f02"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af736c33831b22ca5f6c9ac5e02a9f02"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/websocket 200 29ms","method":"POST","requestID":"af736c33831b22ca5f6c9ac5e02a9f02","responseTime":29,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dfdbd3060f16a65f6fe50da66f64a36d"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"dfdbd3060f16a65f6fe50da66f64a36d"} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/websocket 200 33ms","method":"POST","requestID":"dfdbd3060f16a65f6fe50da66f64a36d","responseTime":33,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"d5ef1ec513c2fc0c64311c1ac33be568"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d5ef1ec513c2fc0c64311c1ac33be568","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5ef1ec513c2fc0c64311c1ac33be568"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107614,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d5ef1ec513c2fc0c64311c1ac33be568","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d5ef1ec513c2fc0c64311c1ac33be568","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.342178901Z"}]},"request_id":"4d0bd78e-0b36-4808-bcf0-8ebf7840e71c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.3823247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d5ef1ec513c2fc0c64311c1ac33be568","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5ef1ec513c2fc0c64311c1ac33be568"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5ef1ec513c2fc0c64311c1ac33be568"} device-1 | {"level":"info","message":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? 200 15ms","method":"GET","requestID":"d5ef1ec513c2fc0c64311c1ac33be568","responseTime":15,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"7db1115089d4aaec9dc9fb8e37e958ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7db1115089d4aaec9dc9fb8e37e958ae","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7db1115089d4aaec9dc9fb8e37e958ae"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.067769,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7db1115089d4aaec9dc9fb8e37e958ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7db1115089d4aaec9dc9fb8e37e958ae","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.405555041Z"}]},"request_id":"f30c3ae9-0801-4119-b3b3-74b74ef40634","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.4016478} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7db1115089d4aaec9dc9fb8e37e958ae","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7db1115089d4aaec9dc9fb8e37e958ae"} device-1 | {"level":"info","message":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? 200 11ms","method":"GET","requestID":"7db1115089d4aaec9dc9fb8e37e958ae","responseTime":11,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7db1115089d4aaec9dc9fb8e37e958ae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"b62a19c058fa1e59113c5a971ab5118e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b62a19c058fa1e59113c5a971ab5118e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b62a19c058fa1e59113c5a971ab5118e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.017277,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b62a19c058fa1e59113c5a971ab5118e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b62a19c058fa1e59113c5a971ab5118e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to run experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to book experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully booked experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"288066f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28808e00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.753766,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"288066f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"288066f0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.589629,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28808e00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"28808e00-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.342178901Z"}]},"request_id":"d94f3d3e-07a6-4688-be38-901c25b2059a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.4659495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"288066f0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.405555041Z"}]},"request_id":"4fb5ec4f-84bc-472d-a626-af5065bc0805","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.469396} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"288066f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? 200 15ms","method":"GET","requestID":"288066f0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28808e00-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28808e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? 200 17ms","method":"GET","requestID":"28808e00-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Setting up experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully set up experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"288b6370-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"288bb190-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"288bd8a0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully running experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.650662,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"288b6370-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"288b6370-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888346,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"288bb190-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"288bb190-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50118","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.342178901Z"}]},"request_id":"e48f593e-1e3c-4a5a-91ff-72b7d68570d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5442452} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f79256b3-31c8-4cdc-aff8-b65ec9e8a3f1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.545682} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"288b6370-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.405555041Z"}]},"request_id":"49dc3a29-09b5-4364-a763-748a7cfe5d19","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5460932} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"288bb190-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50118","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.722256,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"288bd8a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","rebac_allow":false,"scope_allow":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":"288bd8a0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"288b6370-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"1d6126ed-918b-462a-ba72-5a04ff175684","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.554145} device-1 | {"level":"info","message":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? 200 27ms","method":"GET","requestID":"288b6370-4911-11ef-863d-25b977f1d961","responseTime":27,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"288bb190-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? 200 26ms","method":"GET","requestID":"288bb190-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1242f248-1cd1-4395-8513-06e11864f99f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5544426} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"288bd8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling 200 27ms","method":"POST","requestID":"288bd8a0-4911-11ef-863d-25b977f1d961","responseTime":27,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b62a19c058fa1e59113c5a971ab5118e","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28901e60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28906c80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3235830-367f-45b2-bdd9-f04e457c8f15","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5656433} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.154666,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28901e60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","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/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b62a19c058fa1e59113c5a971ab5118e"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"28901e60-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7eddd23-30e6-4d26-a750-3b0a5042f49c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5664346} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.221899,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"b62a19c058fa1e59113c5a971ab5118e","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28906c80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","rebac_allow":false,"scope_allow":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":"28906c80-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28901e60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling 200 14ms","method":"POST","requestID":"28901e60-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28906c80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling 200 13ms","method":"POST","requestID":"28906c80-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"787171cf55b615b7bfd649911316b135"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"787171cf55b615b7bfd649911316b135","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"787171cf55b615b7bfd649911316b135"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2892dd80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77809,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"787171cf55b615b7bfd649911316b135","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"787171cf55b615b7bfd649911316b135","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e083556-2f9f-4121-8dad-df4d392e1abc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5810118} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.172833,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2892dd80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","rebac_allow":false,"scope_allow":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":"2892dd80-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2892dd80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.342178901Z"}]},"request_id":"6010605a-49c0-48c5-a686-fc56b7d5dd1c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.5845542} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling 200 8ms","method":"POST","requestID":"2892dd80-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"787171cf55b615b7bfd649911316b135","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Building connection plan","requestID":"b62a19c058fa1e59113c5a971ab5118e"} 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":"4d2c987c-7a09-4a58-9a14-12d87f96c685"},{"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":"a28a6637-f80b-4f96-9d13-ceec8119d58e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ce516b60-3e8b-4047-9b07-45182ed9fbd3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b62a19c058fa1e59113c5a971ab5118e"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b62a19c058fa1e59113c5a971ab5118e"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"787171cf55b615b7bfd649911316b135"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"787171cf55b615b7bfd649911316b135"} device-1 | {"level":"info","message":"GET /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152? 200 14ms","method":"GET","requestID":"787171cf55b615b7bfd649911316b135","responseTime":14,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"d44fb76560976e471512ebd4832a7321"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.734357,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d44fb76560976e471512ebd4832a7321","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2894d950-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d44fb76560976e471512ebd4832a7321"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2894d950-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922874,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d44fb76560976e471512ebd4832a7321","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d44fb76560976e471512ebd4832a7321","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:29.405555041Z"}]},"request_id":"1a458c08-a156-4dfb-83e6-c1904fda75f4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.6018806} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d44fb76560976e471512ebd4832a7321","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d44fb76560976e471512ebd4832a7321"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"7d2fd819-1b75-47f2-b90b-02806e79aef3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.6047294} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d44fb76560976e471512ebd4832a7321"} device-1 | {"level":"info","message":"GET /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac? 200 11ms","method":"GET","requestID":"d44fb76560976e471512ebd4832a7321","responseTime":11,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b1fd9c2-d6d7-445a-ad83-20861f29b304","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.6050847} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2894d950-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b'","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b'","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2894d950-4911-11ef-863d-25b977f1d961"} 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":"2894d950-4911-11ef-863d-25b977f1d961","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":"2894d950-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b62a19c058fa1e59113c5a971ab5118e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"289d3dc0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd364909-1a91-454a-a0c6-267912e1e825","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.6491206} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.467758,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"289d3dc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","rebac_allow":false,"scope_allow":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":"289d3dc0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"289d3dc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling 200 9ms","method":"POST","requestID":"289d3dc0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling"} device-1 | {"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"289f3990-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2aab3f5e-ba62-45dd-afdc-29e901badd5c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.6621168} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.707119,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"289f3990-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","rebac_allow":false,"scope_allow":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":"289f3990-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"289f3990-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling 200 9ms","method":"POST","requestID":"289f3990-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 5420943227010570821 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:nna7\r\na=ice-pwd:9+xHRePIoX+Jj0u0Wa3NFRL+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7D:C6:0E:BB:35:DF:77:82:DA:69:3A:79:AC:62:61:9F:96:F8:EC:2F:77:35:AE:D7:28:4E:2B:C4:73:D3:E1:12\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 717592328458777324 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:5glh\r\na=ice-pwd:mkQbMblK4VZe9HHmqkIInDaJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 74:68:04:C5:14:C8:27:C9:8B:2A:78:39:56:25:C8:08:2F:34:FD:5D:0E:8F:B3:3D:D3:77:66:2A:92:8C:B4:97\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:94621026 1 udp 2113937151 ec69e922-6ce0-432b-9a68-05d353b87da6.local 58489 typ host generation 0 ufrag 5glh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2525523057 1 udp 1677729535 141.24.211.56 58489 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 5glh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","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/a4141fa7-29a5-4952-9f9a-8bbdfa578152'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152'"} device-1 | {"content":{"candidate":"candidate:3146331924 1 udp 2113937151 28b0afe2-a672-4315-8bbf-029c89ad4fd3.local 34343 typ host generation 0 ufrag nna7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1067736427 1 udp 1677729535 141.24.211.56 34343 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag nna7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","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/98b0e1fc-9a66-4ecc-a686-5ba4c638afac'"} device-1 | {"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","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/185c59a9-4613-4985-bbb0-f7ac1e2f453b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e965ce1a5209a8c805c41a34466f3c41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e965ce1a5209a8c805c41a34466f3c41","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","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":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"}}},"level":"info","message":"received a callback","requestID":"e965ce1a5209a8c805c41a34466f3c41"} device-1 | {"device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","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":"e965ce1a5209a8c805c41a34466f3c41","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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":"e965ce1a5209a8c805c41a34466f3c41"} device-1 | {"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","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/185c59a9-4613-4985-bbb0-f7ac1e2f453b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6358fba51104eb0dcfaebb37fad8908b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6358fba51104eb0dcfaebb37fad8908b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"}}},"level":"info","message":"received a callback","requestID":"6358fba51104eb0dcfaebb37fad8908b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"28aa0f00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F185c59a9-4613-4985-bbb0-f7ac1e2f453b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3204fa91-0d19-466e-80a3-8f00e7c61cdc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.7322972} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.068408,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28aa0f00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","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":"28aa0f00-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"28aa0f00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b 200 7ms","method":"GET","requestID":"28aa0f00-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"6358fba51104eb0dcfaebb37fad8908b","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"6358fba51104eb0dcfaebb37fad8908b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28ae7bd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36bc2834-8b83-4356-b912-e9b2789f9bef","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.7613153} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.227192,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28ae7bd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","rebac_allow":false,"scope_allow":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":"28ae7bd0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28ae7bd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling 200 8ms","method":"POST","requestID":"28ae7bd0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28afdb60-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40716f2b-495f-471a-a81a-cd8b9b68ccdd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.7710063} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.662502,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28afdb60-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","rebac_allow":false,"scope_allow":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":"28afdb60-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28afdb60-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling 200 8ms","method":"POST","requestID":"28afdb60-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"142c4db443ff09361d3723df87f657b8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"142c4db443ff09361d3723df87f657b8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","requestID":"142c4db443ff09361d3723df87f657b8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.903567,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"142c4db443ff09361d3723df87f657b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"142c4db443ff09361d3723df87f657b8","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","requestID":"142c4db443ff09361d3723df87f657b8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"142c4db443ff09361d3723df87f657b8"} experiment-1 | {"level":"info","message":"GET /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2 200 13ms","method":"GET","requestID":"142c4db443ff09361d3723df87f657b8","responseTime":13,"status":200,"url":"/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"3a963c9a4620418d517a7c5442d6eee9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3a963c9a4620418d517a7c5442d6eee9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","requestID":"3a963c9a4620418d517a7c5442d6eee9"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.64762,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3a963c9a4620418d517a7c5442d6eee9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3a963c9a4620418d517a7c5442d6eee9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Attempting to finish experiment","requestID":"3a963c9a4620418d517a7c5442d6eee9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"28ba89c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.154172,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28ba89c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28ba89c0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","device":"98b0e1fc-9a66-4ecc-a686-5ba4c638afac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b","device":"a4141fa7-29a5-4952-9f9a-8bbdfa578152","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/185c59a9-4613-4985-bbb0-f7ac1e2f453b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c884f2d7486723534caed804d2f8d62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7c884f2d7486723534caed804d2f8d62","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F185c59a9-4613-4985-bbb0-f7ac1e2f453b': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F185c59a9-4613-4985-bbb0-f7ac1e2f453b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"8875c453-1828-47da-b050-baa28cfd6074","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.8532643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e6c87c7-c053-407c-8d32-504b087c5e54","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.8535233} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5d8606c8ff78e232792422c72501a0c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"}}},"level":"info","message":"received a callback","requestID":"7c884f2d7486723534caed804d2f8d62"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b5d8606c8ff78e232792422c72501a0c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"28ba89c0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"}}},"level":"info","message":"received a callback","requestID":"b5d8606c8ff78e232792422c72501a0c"} device-1 | {"data":{"peerconnection":"185c59a9-4613-4985-bbb0-f7ac1e2f453b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"28ba89c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b 204 37ms","method":"DELETE","requestID":"28ba89c0-4911-11ef-863d-25b977f1d961","responseTime":37,"status":204,"url":"/peerconnections/185c59a9-4613-4985-bbb0-f7ac1e2f453b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"},"level":"info","message":"Successfully finished experiment","requestID":"3a963c9a4620418d517a7c5442d6eee9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28c2c720-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4141fa7-29a5-4952-9f9a-8bbdfa578152","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"994f7bb7-684b-4cca-9d01-ac6d71940881","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.8953764} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.329344,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28c2c720-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152","object_type":"device","rebac_allow":false,"scope_allow":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":"28c2c720-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28c2c720-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling 200 9ms","method":"POST","requestID":"28c2c720-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/a4141fa7-29a5-4952-9f9a-8bbdfa578152/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28c49be0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"a31bd8fa-16dd-4618-a7d4-b4c641f045e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.9028635} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65ead301-dbf8-49a9-bb9e-bb9206cc32f1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.9030614} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3a963c9a4620418d517a7c5442d6eee9","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98b0e1fc-9a66-4ecc-a686-5ba4c638afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8282d62-7ced-42d4-8277-de044ed400fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.907369} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.424752,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"28c49be0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac","object_type":"device","rebac_allow":false,"scope_allow":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":"28c49be0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28c49be0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling 200 10ms","method":"POST","requestID":"28c49be0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2","requestID":"3a963c9a4620418d517a7c5442d6eee9"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2 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":"3a963c9a4620418d517a7c5442d6eee9"} experiment-1 | {"level":"info","message":"DELETE /experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2 204 147ms","method":"DELETE","requestID":"3a963c9a4620418d517a7c5442d6eee9","responseTime":147,"status":204,"url":"/experiments/4c2ca9a7-f8e8-4a0b-b7f5-7a88b74813f2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"7c884f2d7486723534caed804d2f8d62","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c884f2d7486723534caed804d2f8d62"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"b5d8606c8ff78e232792422c72501a0c","responseTime":119,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY","level":"info","message":"auth send jwt","requestID":"98f47379dd769e5a62024c6ac39eaf1f"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"b5d8606c8ff78e232792422c72501a0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"98f47379dd769e5a62024c6ac39eaf1f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"98f47379dd769e5a62024c6ac39eaf1f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2850","request_time":"0.638","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0dde5cf90ffda0d32773faa37acbc571"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:31Z"} gateway-1 | {"time_local":"23/Jul/2024:16:32:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2845","request_time":"0.628","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af1995e4ff1810b6207670fc97e2456e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.953253,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"98f47379dd769e5a62024c6ac39eaf1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752351,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1MX0.dj6w8n0eWxKGJieJIK3geyKGNkVRIaJ1CC70DAr2MuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","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/a4141fa7-29a5-4952-9f9a-8bbdfa578152' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/98b0e1fc-9a66-4ecc-a686-5ba4c638afac' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e3469d6c-5de3-4ad0-bc64-4f214dc42fa6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752351.9972854} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"734ca9b2-2af6-4b19-9c6b-e247931e4196","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0013924} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"4be46238-380d-4cf8-9dcd-e399df187f29","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0117717} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07b2998c-97f9-4269-9483-eb4fa7f550e7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0120137} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.011739677Z"}]},"request_id":"0a4fe843-347b-453d-9656-f1b924c328e3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.015342} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"98f47379dd769e5a62024c6ac39eaf1f"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"98f47379dd769e5a62024c6ac39eaf1f","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"98f47379dd769e5a62024c6ac39eaf1f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Mn0.pIFH_eMSx-dE__KUNF1M6qrKNCCW3BUJ4B-T-kuswIY","level":"info","message":"auth send jwt","requestID":"00619dd26e7335bcb8d922e8f4ba391e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"00619dd26e7335bcb8d922e8f4ba391e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"00619dd26e7335bcb8d922e8f4ba391e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754643,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"00619dd26e7335bcb8d922e8f4ba391e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752352,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Mn0.pIFH_eMSx-dE__KUNF1M6qrKNCCW3BUJ4B-T-kuswIY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"588ffe03-0e89-4776-8fb3-bfae7df71ae0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.035998} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed822ce1-885a-48b7-bd65-0a934dc0e1eb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0401356} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"3d72707d-ce67-4876-931f-2073b49a43ec","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0477128} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9bb2ee3-76ee-4894-8642-dd8ce4bdb130","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.0478458} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.047691797Z"}]},"request_id":"79a5f7ea-8c31-44b1-874e-b24fbb08762e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752352.051314} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"00619dd26e7335bcb8d922e8f4ba391e"} gateway-1 | {"time_local":"23/Jul/2024:16:32:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00619dd26e7335bcb8d922e8f4ba391e"} device-1 | {"level":"info","message":"POST /devices? 201 31ms","method":"POST","requestID":"00619dd26e7335bcb8d922e8f4ba391e","responseTime":31,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40b40e220adaacb8847f5e9b0d46752a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"40b40e220adaacb8847f5e9b0d46752a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/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":"40b40e220adaacb8847f5e9b0d46752a"} device-1 | {"level":"info","message":"OPTIONS /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/websocket 200 1ms","method":"OPTIONS","requestID":"40b40e220adaacb8847f5e9b0d46752a","responseTime":1,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1M30.k9h3SDWJ3F7jdZKxUIR2MiwUI9pMIaOnFq7TWiBwlJo","level":"info","message":"auth send jwt","requestID":"d62519c0372c10233a514e5b5ac550fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d62519c0372c10233a514e5b5ac550fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d62519c0372c10233a514e5b5ac550fc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.201624,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d62519c0372c10233a514e5b5ac550fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752353,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1M30.k9h3SDWJ3F7jdZKxUIR2MiwUI9pMIaOnFq7TWiBwlJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d62519c0372c10233a514e5b5ac550fc","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee850f9741e046315f79da4d08c3064c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ee850f9741e046315f79da4d08c3064c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/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":"ee850f9741e046315f79da4d08c3064c"} device-1 | {"level":"info","message":"OPTIONS /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/websocket 200 0ms","method":"OPTIONS","requestID":"ee850f9741e046315f79da4d08c3064c","responseTime":0,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d62519c0372c10233a514e5b5ac550fc"} gateway-1 | {"time_local":"23/Jul/2024:16:32:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/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":"d62519c0372c10233a514e5b5ac550fc"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/websocket 200 23ms","method":"POST","requestID":"d62519c0372c10233a514e5b5ac550fc","responseTime":23,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1M30.k9h3SDWJ3F7jdZKxUIR2MiwUI9pMIaOnFq7TWiBwlJo","level":"info","message":"auth send jwt","requestID":"f087a875586e5c5635982b6ccde2556b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f087a875586e5c5635982b6ccde2556b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f087a875586e5c5635982b6ccde2556b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:33Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.679289,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f087a875586e5c5635982b6ccde2556b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752353,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1M30.k9h3SDWJ3F7jdZKxUIR2MiwUI9pMIaOnFq7TWiBwlJo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f087a875586e5c5635982b6ccde2556b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f087a875586e5c5635982b6ccde2556b"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/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":"f087a875586e5c5635982b6ccde2556b"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/websocket 200 19ms","method":"POST","requestID":"f087a875586e5c5635982b6ccde2556b","responseTime":19,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"086a55b23a4b44c574c92fa7f5ebc93d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"086a55b23a4b44c574c92fa7f5ebc93d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"086a55b23a4b44c574c92fa7f5ebc93d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850399,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"086a55b23a4b44c574c92fa7f5ebc93d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"086a55b23a4b44c574c92fa7f5ebc93d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.011739677Z"}]},"request_id":"101dc550-3bdc-437e-9a45-23e0a548e71b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.0472608} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"086a55b23a4b44c574c92fa7f5ebc93d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"086a55b23a4b44c574c92fa7f5ebc93d"} device-1 | {"level":"info","message":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? 200 15ms","method":"GET","requestID":"086a55b23a4b44c574c92fa7f5ebc93d","responseTime":15,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"086a55b23a4b44c574c92fa7f5ebc93d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"64469e20dd305fa52358c0f5f4c28b3c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"64469e20dd305fa52358c0f5f4c28b3c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64469e20dd305fa52358c0f5f4c28b3c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650347,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"64469e20dd305fa52358c0f5f4c28b3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"64469e20dd305fa52358c0f5f4c28b3c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.047691797Z"}]},"request_id":"8ecc0fce-a206-40e2-a3ba-c9d17bd1bf61","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.0684772} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64469e20dd305fa52358c0f5f4c28b3c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64469e20dd305fa52358c0f5f4c28b3c"} device-1 | {"level":"info","message":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? 200 13ms","method":"GET","requestID":"64469e20dd305fa52358c0f5f4c28b3c","responseTime":13,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64469e20dd305fa52358c0f5f4c28b3c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.14134,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to run experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to book experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully booked experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a175aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.75869,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a175aa0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a175aa0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848569,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.011739677Z"}]},"request_id":"79924f4d-a235-482f-9fcf-aa53d795a69a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.1326442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a175aa0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.047691797Z"}]},"request_id":"d00e2a2c-6117-4527-8e8e-ab6afc733f9e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.1337607} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a175aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? 200 16ms","method":"GET","requestID":"2a175aa0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? 200 15ms","method":"GET","requestID":"2a17a8c0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Setting up experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully set up experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a208260-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a20a970-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully running experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a20d080-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.578943,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a208260-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a208260-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814819,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a20a970-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2a20a970-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3140077-71de-4331-85f3-6ea4422f3337","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.1916313} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.011739677Z"}]},"request_id":"7d0d8801-2112-4819-a562-f4d357d3c2a5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.1928477} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.618211,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a20d080-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","rebac_allow":false,"scope_allow":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":"2a20d080-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a208260-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.047691797Z"}]},"request_id":"bf1006eb-75f7-4a6b-9c81-4ac3910cf093","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.194218} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a20a970-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a20d080-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling 200 15ms","method":"POST","requestID":"2a20d080-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a208260-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? 200 18ms","method":"GET","requestID":"2a208260-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a20a970-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? 200 18ms","method":"GET","requestID":"2a20a970-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a236890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a23b6b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.733592,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9891c9b-7666-4327-9895-90a8c68e046a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2064192} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1976fbee-5b6b-440d-a1dc-7d2fd46d2e33","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.207586} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a236890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","rebac_allow":false,"scope_allow":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":"2a236890-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.925787,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0f99d66f-6d27-470d-8151-65ba1ffc4750#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0f99d66f-6d27-470d-8151-65ba1ffc4750","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"0e8da4d4-0f01-4674-8c83-67c5bcf42a58","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.208171} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5714084-23d2-4a7f-b2e4-1293bb83e5d1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2086499} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a23b6b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","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":"2a236890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2a23b6b0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling 200 10ms","method":"POST","requestID":"2a236890-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a23b6b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling 200 11ms","method":"POST","requestID":"2a23b6b0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a25d990-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a","responseTime":142,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b66b1703-ced4-44ff-ab0f-117683b6dc84","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2225914} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.832804,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a25d990-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","rebac_allow":false,"scope_allow":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":"2a25d990-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"722c599b4c35d05d6a8a9d4888244dd1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"722c599b4c35d05d6a8a9d4888244dd1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a25d990-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling 200 9ms","method":"POST","requestID":"2a25d990-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"722c599b4c35d05d6a8a9d4888244dd1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Building connection plan","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} 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":"41f17470-9c6d-481a-88c6-ccc36599d6c7"},{"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":"25023ad3-f6ba-4207-93e5-af0c766e685e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1b8565aa-3f6c-46bb-abe0-01dffb83895d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708681,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"722c599b4c35d05d6a8a9d4888244dd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"722c599b4c35d05d6a8a9d4888244dd1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.825869,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a27ae50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.011739677Z"}]},"request_id":"a2890ab4-541a-484f-b158-a23c1e77255c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.236432} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"722c599b4c35d05d6a8a9d4888244dd1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"722c599b4c35d05d6a8a9d4888244dd1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"722c599b4c35d05d6a8a9d4888244dd1"} device-1 | {"level":"info","message":"GET /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7? 200 12ms","method":"GET","requestID":"722c599b4c35d05d6a8a9d4888244dd1","responseTime":12,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8953de44-7675-47a6-aded-0f4cd96c6b0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2402117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c972944-a2a7-497f-b425-37ac4bf4a996","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2404087} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"3ed826f9e53f6d2cc9350338f4338401"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3ed826f9e53f6d2cc9350338f4338401","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ed826f9e53f6d2cc9350338f4338401"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720142,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ed826f9e53f6d2cc9350338f4338401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3ed826f9e53f6d2cc9350338f4338401","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:32.047691797Z"}]},"request_id":"c46f9f0c-a683-461d-a2dd-d29c59e8b24e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.251845} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3ed826f9e53f6d2cc9350338f4338401","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b'","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b'","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} 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":"2a27ae50-4911-11ef-863d-25b977f1d961","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ed826f9e53f6d2cc9350338f4338401"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ed826f9e53f6d2cc9350338f4338401"} device-1 | {"level":"info","message":"GET /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82? 200 11ms","method":"GET","requestID":"3ed826f9e53f6d2cc9350338f4338401","responseTime":11,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"2a27ae50-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4ee88bf03cfeb8504cc4b1e1d6cc0e3a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a2fc4a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46a6214a-3597-4a26-be39-ead8ca19356c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.286656} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.898397,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a2fc4a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","rebac_allow":false,"scope_allow":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":"2a2fc4a0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a2fc4a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling 200 9ms","method":"POST","requestID":"2a2fc4a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a317250-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9e4afdb-5f45-4396-8ac1-e9205487ec51","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.2980087} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.462057,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a317250-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","rebac_allow":false,"scope_allow":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":"2a317250-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a317250-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling 200 9ms","method":"POST","requestID":"2a317250-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling"} device-1 | {"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4005390864496697807 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:TpzR\r\na=ice-pwd:B+NMKLC7dK13wOlF5Q1Cm6OE\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1D:88:78:6A:BA:95:8C:5A:57:F5:90:8A:67:21:ED:F5:38:CE:4C:2C:ED:78:34:20:A1:A4:3E:73:44:48:FD:84\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3553078314307102144 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:xBbu\r\na=ice-pwd:lc0k1eyvRW2RFfUxMAQCckIn\r\na=ice-options:trickle\r\na=fingerprint:sha-256 40:69:7F:A5:37:19:9C:FF:F7:78:55:76:CC:B9:70:1D:C7:10:89:8F:61:9A:F3:A5:B3:FD:2F:B9:9B:B3:DC:3B\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1641638003 1 udp 2113937151 a2013b40-82da-4874-a9ff-a4ceb6686721.local 39653 typ host generation 0 ufrag xBbu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4075997536 1 udp 1677729535 141.24.211.56 39653 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag xBbu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","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/7f807649-16de-41e2-b22e-5a6e6bc2efa7'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7'"} device-1 | {"content":{"candidate":"candidate:3176627838 1 udp 2113937151 8f03f269-415e-41da-bc6c-b2844a019e94.local 41664 typ host generation 0 ufrag TpzR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:779935597 1 udp 1677729535 141.24.211.56 41664 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag TpzR network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","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/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82'"} device-1 | {"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","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/3e770f74-154d-4e4f-93ae-97e27aa3a81b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8975523a4d100bdec62b6a759ad25a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f8975523a4d100bdec62b6a759ad25a2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"}}},"level":"info","message":"received a callback","requestID":"f8975523a4d100bdec62b6a759ad25a2"} device-1 | {"device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f8975523a4d100bdec62b6a759ad25a2","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"f8975523a4d100bdec62b6a759ad25a2"} device-1 | {"device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","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/3e770f74-154d-4e4f-93ae-97e27aa3a81b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18ee1d33e0dee4b5ee14859be4a10c97","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"18ee1d33e0dee4b5ee14859be4a10c97","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"}}},"level":"info","message":"received a callback","requestID":"18ee1d33e0dee4b5ee14859be4a10c97"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2a3d5930-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3e770f74-154d-4e4f-93ae-97e27aa3a81b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92af1c7a-a18f-4b4a-b395-fa8a8db92976","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.3750806} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.061116,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a3d5930-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","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":"2a3d5930-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2a3d5930-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b 200 7ms","method":"GET","requestID":"2a3d5930-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"18ee1d33e0dee4b5ee14859be4a10c97","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"18ee1d33e0dee4b5ee14859be4a10c97"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a419ef0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcd82873-9753-4d20-a7be-a4b9367f010f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.4026053} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.957815,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a419ef0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","rebac_allow":false,"scope_allow":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":"2a419ef0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a419ef0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling 200 7ms","method":"POST","requestID":"2a419ef0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a42fe80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b05e3aa3-c1e9-4c4d-8824-2d705feba1be","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.4118242} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.147408,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a42fe80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","rebac_allow":false,"scope_allow":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":"2a42fe80-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a42fe80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling 200 7ms","method":"POST","requestID":"2a42fe80-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"1c0f3605f03ffdbccd545ab32152cfab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1c0f3605f03ffdbccd545ab32152cfab","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","requestID":"1c0f3605f03ffdbccd545ab32152cfab"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.637419,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c0f3605f03ffdbccd545ab32152cfab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1c0f3605f03ffdbccd545ab32152cfab","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","requestID":"1c0f3605f03ffdbccd545ab32152cfab"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c0f3605f03ffdbccd545ab32152cfab"} experiment-1 | {"level":"info","message":"GET /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750 200 11ms","method":"GET","requestID":"1c0f3605f03ffdbccd545ab32152cfab","responseTime":11,"status":200,"url":"/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"374020d0e5489d3f621ff52b68203a99"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"374020d0e5489d3f621ff52b68203a99","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","requestID":"374020d0e5489d3f621ff52b68203a99"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.667682,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"374020d0e5489d3f621ff52b68203a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"374020d0e5489d3f621ff52b68203a99","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Attempting to finish experiment","requestID":"374020d0e5489d3f621ff52b68203a99"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.642965,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","device":"7f807649-16de-41e2-b22e-5a6e6bc2efa7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b","device":"f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","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/3e770f74-154d-4e4f-93ae-97e27aa3a81b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3e770f74-154d-4e4f-93ae-97e27aa3a81b': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3e770f74-154d-4e4f-93ae-97e27aa3a81b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"23933483-dc2e-4cfa-921f-7568d0ac5c0e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.493681} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ac1ca101449c9fecddfe0c48db71ae9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a697dbaf-2338-4ba9-87a3-d5f68916c9b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.4939342} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ac1ca101449c9fecddfe0c48db71ae9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c183a191332cfac9d3752e2f46dbcb47","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"}}},"level":"info","message":"received a callback","requestID":"6ac1ca101449c9fecddfe0c48db71ae9"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"c183a191332cfac9d3752e2f46dbcb47","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"}}},"level":"info","message":"received a callback","requestID":"c183a191332cfac9d3752e2f46dbcb47"} device-1 | {"data":{"peerconnection":"3e770f74-154d-4e4f-93ae-97e27aa3a81b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b 204 34ms","method":"DELETE","requestID":"2a4dd3f0-4911-11ef-863d-25b977f1d961","responseTime":34,"status":204,"url":"/peerconnections/3e770f74-154d-4e4f-93ae-97e27aa3a81b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"},"level":"info","message":"Successfully finished experiment","requestID":"374020d0e5489d3f621ff52b68203a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a55c330-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f807649-16de-41e2-b22e-5a6e6bc2efa7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5cd776f-35ac-4d76-b2ff-411cfe00a83f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.5375304} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.95852,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a55c330-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7","object_type":"device","rebac_allow":false,"scope_allow":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":"2a55c330-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a55c330-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling 200 13ms","method":"POST","requestID":"2a55c330-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/7f807649-16de-41e2-b22e-5a6e6bc2efa7/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0f99d66f-6d27-470d-8151-65ba1ffc4750': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0f99d66f-6d27-470d-8151-65ba1ffc4750","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"0dcb390b-28cb-4628-a04b-14877460c730","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.5455084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bb105a3-0bf2-4ebd-b8ce-be9606b840af","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.546207} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a583430-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"374020d0e5489d3f621ff52b68203a99","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2bb4097-e5df-4f3b-9a82-2b6c412e4f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcf5e983-8914-4b26-a381-1a4bb1e5caf2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.5515459} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.653672,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2a583430-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82","object_type":"device","rebac_allow":false,"scope_allow":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":"2a583430-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a583430-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling 200 9ms","method":"POST","requestID":"2a583430-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750","requestID":"374020d0e5489d3f621ff52b68203a99"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750 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":"374020d0e5489d3f621ff52b68203a99"} experiment-1 | {"level":"info","message":"DELETE /experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750 204 143ms","method":"DELETE","requestID":"374020d0e5489d3f621ff52b68203a99","responseTime":143,"status":204,"url":"/experiments/0f99d66f-6d27-470d-8151-65ba1ffc4750"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"6ac1ca101449c9fecddfe0c48db71ae9","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ac1ca101449c9fecddfe0c48db71ae9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"c183a191332cfac9d3752e2f46dbcb47","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"c183a191332cfac9d3752e2f46dbcb47"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"0007448780e0271f78c58b88fb482be5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0007448780e0271f78c58b88fb482be5","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2848","request_time":"0.619","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8c0b0057b751abd710209fd848a98696"} device-1 | {"level":"info","message":"postDevices called","requestID":"0007448780e0271f78c58b88fb482be5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2849","request_time":"0.606","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"89a68889c097cc46ceb5e6e61dac703a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.050276,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0007448780e0271f78c58b88fb482be5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f2bb4097-e5df-4f3b-9a82-2b6c412e4f82' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4f7caf12-20d1-4f8d-8de1-af2224af00bd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.643012} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","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/7f807649-16de-41e2-b22e-5a6e6bc2efa7' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b223088-9a6c-4dc2-a86a-69791034150e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.6479206} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"c47195f5-b7fd-43e2-b2a0-99557b0a4f59","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.6583753} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d8b14ee-7ace-41ff-85f7-9a381d056b1e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.6586113} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.658345320Z"}]},"request_id":"583dcac6-adc0-42d7-bdea-872ae80753fa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.6630933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0007448780e0271f78c58b88fb482be5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0007448780e0271f78c58b88fb482be5"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"0007448780e0271f78c58b88fb482be5","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs","level":"info","message":"auth send jwt","requestID":"44d5dda7d2aa0107f6956231093f7f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"44d5dda7d2aa0107f6956231093f7f7a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"44d5dda7d2aa0107f6956231093f7f7a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.757322,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"44d5dda7d2aa0107f6956231093f7f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752354,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NH0.8qEe6-agOrGRGkEZSN96ZkDM_cra4Qe5ZhcsBP7KpLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1b4aae29-9d82-4c68-83cd-6d4b16fc6137","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.694241} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0259ea9-c3b2-4c1f-867b-7b60326def5a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.6979687} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"8b6f1570-78aa-4c65-b5ab-621123051582","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.7097795} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8bbb808b-0f1b-486c-a40e-69dc9ee28569","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.7099595} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"4357e903-6230-42c7-9564-03a617c74705","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752354.71483} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"44d5dda7d2aa0107f6956231093f7f7a"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"44d5dda7d2aa0107f6956231093f7f7a","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44d5dda7d2aa0107f6956231093f7f7a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NX0.BDmNszExkNDNXUuZUKVb1KV2FswqY6KdBnjqEmZBnAs","level":"info","message":"auth send jwt","requestID":"931c550290f6d05f8d9c4add02409d4b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"931c550290f6d05f8d9c4add02409d4b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"931c550290f6d05f8d9c4add02409d4b"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713839,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"931c550290f6d05f8d9c4add02409d4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752355,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NX0.BDmNszExkNDNXUuZUKVb1KV2FswqY6KdBnjqEmZBnAs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"931c550290f6d05f8d9c4add02409d4b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"c518fb7e-e8f8-4f49-9131-887847c247bd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752355.2103014} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"931c550290f6d05f8d9c4add02409d4b","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09cfe435-03d9-425d-b4e9-9d2450396575","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752355.217345} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"931c550290f6d05f8d9c4add02409d4b","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"1a986d9d-c658-4829-8ed9-ba719f4df429","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752355.2309024} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"931c550290f6d05f8d9c4add02409d4b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"931c550290f6d05f8d9c4add02409d4b"} gateway-1 | {"time_local":"23/Jul/2024:16:32:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"931c550290f6d05f8d9c4add02409d4b"} device-1 | {"level":"info","message":"PATCH /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084 200 33ms","method":"PATCH","requestID":"931c550290f6d05f8d9c4add02409d4b","responseTime":33,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NX0.BDmNszExkNDNXUuZUKVb1KV2FswqY6KdBnjqEmZBnAs","level":"info","message":"auth send jwt","requestID":"a80f13a054bc010690a88a23dff36a97"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a80f13a054bc010690a88a23dff36a97","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a80f13a054bc010690a88a23dff36a97"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.327988,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a80f13a054bc010690a88a23dff36a97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752355,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1NX0.BDmNszExkNDNXUuZUKVb1KV2FswqY6KdBnjqEmZBnAs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a80f13a054bc010690a88a23dff36a97","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a80f13a054bc010690a88a23dff36a97"} gateway-1 | {"time_local":"23/Jul/2024:16:32:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a80f13a054bc010690a88a23dff36a97"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/websocket 200 21ms","method":"POST","requestID":"a80f13a054bc010690a88a23dff36a97","responseTime":21,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c5fb42aef9ee896d9340182101ace442","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c5fb42aef9ee896d9340182101ace442","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/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":"c5fb42aef9ee896d9340182101ace442"} device-1 | {"level":"info","message":"OPTIONS /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/websocket 200 1ms","method":"OPTIONS","requestID":"c5fb42aef9ee896d9340182101ace442","responseTime":1,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"e5afc4bbec5d054780da0eb920fe3873"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e5afc4bbec5d054780da0eb920fe3873","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e5afc4bbec5d054780da0eb920fe3873"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.336063,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e5afc4bbec5d054780da0eb920fe3873","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5afc4bbec5d054780da0eb920fe3873","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e5afc4bbec5d054780da0eb920fe3873"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/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":"e5afc4bbec5d054780da0eb920fe3873"} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/websocket 200 20ms","method":"POST","requestID":"e5afc4bbec5d054780da0eb920fe3873","responseTime":20,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"36871e73b244ba80a3fabde6ef475db5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"36871e73b244ba80a3fabde6ef475db5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36871e73b244ba80a3fabde6ef475db5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235921,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"36871e73b244ba80a3fabde6ef475db5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36871e73b244ba80a3fabde6ef475db5","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.658345320Z"}]},"request_id":"27440a3d-f792-4ed5-8792-bcfe219f42d4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.7695775} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"36871e73b244ba80a3fabde6ef475db5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36871e73b244ba80a3fabde6ef475db5"} device-1 | {"level":"info","message":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? 200 16ms","method":"GET","requestID":"36871e73b244ba80a3fabde6ef475db5","responseTime":16,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36871e73b244ba80a3fabde6ef475db5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"11531c5aa461d3364afd6c51228f1674"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"11531c5aa461d3364afd6c51228f1674","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11531c5aa461d3364afd6c51228f1674"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154993,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"11531c5aa461d3364afd6c51228f1674","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11531c5aa461d3364afd6c51228f1674","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"da0d4fe8-8595-4b3c-8afa-c0950d52c8d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.7935233} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11531c5aa461d3364afd6c51228f1674","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11531c5aa461d3364afd6c51228f1674"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11531c5aa461d3364afd6c51228f1674"} device-1 | {"level":"info","message":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? 200 17ms","method":"GET","requestID":"11531c5aa461d3364afd6c51228f1674","responseTime":17,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"39f052966367562c9d199028f1055e32"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"39f052966367562c9d199028f1055e32","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"39f052966367562c9d199028f1055e32"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.3968,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"39f052966367562c9d199028f1055e32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"39f052966367562c9d199028f1055e32","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to run experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to book experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully booked experiment","requestID":"39f052966367562c9d199028f1055e32"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2bb7c430-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2bb81250-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236786,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bb7c430-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2bb7c430-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947503,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bb81250-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2bb81250-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.658345320Z"}]},"request_id":"4f489939-57e0-4466-b011-6cdfc08040b8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.8637037} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2bb7c430-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"875e68cb-7a8a-415f-aa10-278ee925793d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.8655431} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2bb81250-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2bb7c430-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? 200 23ms","method":"GET","requestID":"2bb7c430-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2bb81250-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? 200 23ms","method":"GET","requestID":"2bb81250-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Setting up experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully locked booking for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to update booking for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully updated booking for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully set up experiment","requestID":"39f052966367562c9d199028f1055e32"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2bc531b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bc558c0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully running experiment","requestID":"39f052966367562c9d199028f1055e32"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.059786,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.388785,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bc531b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"2bc531b0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.658345320Z"}]},"request_id":"9ed9b0f9-47fc-4350-b66d-c7a3a9161ac3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9539008} authorization-1 | {"client_addr":"127.0.0.1:50124","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50124","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.890329,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"076ff435-3433-4753-b650-ce34786b429e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9561658} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db5dc8bd-9d56-41fa-86db-c68b27a86c5e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.956325} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2bc531b0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bc558c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","rebac_allow":false,"scope_allow":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":"2bc558c0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? 200 24ms","method":"GET","requestID":"2bc50aa0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2bc531b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? 200 24ms","method":"GET","requestID":"2bc531b0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdeb31d60-8acb-4b79-8226-abcb64592b25#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdeb31d60-8acb-4b79-8226-abcb64592b25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"358140a6-072c-4fbb-9d14-3af62b0fa278","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9636734} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2bc558c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"662ee6dc-1248-446e-ad68-e50680646289","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9640424} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling 200 25ms","method":"POST","requestID":"2bc558c0-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"39f052966367562c9d199028f1055e32","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bc95060-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bc99e80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c6bb746-2561-474f-a503-d4c8122274c8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9709718} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.876558,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bc95060-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","rebac_allow":false,"scope_allow":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":"2bc95060-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fec3f3dc-6c8f-4be0-adab-700eea3cdf21","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.9727857} experiment-1 | {"data":{"experiment":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"39f052966367562c9d199028f1055e32"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"39f052966367562c9d199028f1055e32","responseTime":166,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.796381,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bc99e80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","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":"2bc95060-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling 200 9ms","method":"POST","requestID":"2bc95060-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2bc99e80-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"00ace85d335f928cb84ea8b6314cd08e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"00ace85d335f928cb84ea8b6314cd08e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bcb2520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2bc99e80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling 200 11ms","method":"POST","requestID":"2bc99e80-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00ace85d335f928cb84ea8b6314cd08e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a46b9c38-7feb-4514-80b9-41e51b67c0a9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.982344} authorization-1 | {"client_addr":"127.0.0.1:50112","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687826,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.295859,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"00ace85d335f928cb84ea8b6314cd08e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"00ace85d335f928cb84ea8b6314cd08e","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bcb2520-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","rebac_allow":false,"scope_allow":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":"2bcb2520-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.658345320Z"}]},"request_id":"9146c00c-0d3c-44ef-870d-ff1d7f32fd07","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752356.986618} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2bcb2520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling 200 9ms","method":"POST","requestID":"2bcb2520-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"00ace85d335f928cb84ea8b6314cd08e","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Building connection plan","requestID":"39f052966367562c9d199028f1055e32"} 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":"d40ef8f4-b57c-427d-969b-cdf9ab8ba08f"},{"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":"b0da3d7f-ec3a-4e10-88ec-7a555d80032c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"22357594-04b8-4e96-b4e4-a77824b6788a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"39f052966367562c9d199028f1055e32"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"39f052966367562c9d199028f1055e32"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00ace85d335f928cb84ea8b6314cd08e"} device-1 | {"level":"info","message":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? 200 11ms","method":"GET","requestID":"00ace85d335f928cb84ea8b6314cd08e","responseTime":11,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00ace85d335f928cb84ea8b6314cd08e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.684093,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s","level":"info","message":"auth send jwt","requestID":"6bd93a312ed256fe3379bb67a7cfefa4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6bd93a312ed256fe3379bb67a7cfefa4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6bd93a312ed256fe3379bb67a7cfefa4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646518,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6bd93a312ed256fe3379bb67a7cfefa4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752356,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1Nn0.v06ui_iV7d-iIS1nu9FrQfzaE_XKsMarGzw3drrpb0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6bd93a312ed256fe3379bb67a7cfefa4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"908f62a3-4d7e-456a-9092-ba217232feca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752357.003544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f83b8485-44f0-4fb1-9d77-98495acad1a1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752357.0040388} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:34.709756820Z"}]},"request_id":"24ba26a1-790f-4a87-a6f8-340f852fe28b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752357.0048919} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6bd93a312ed256fe3379bb67a7cfefa4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6bd93a312ed256fe3379bb67a7cfefa4"} device-1 | {"level":"info","message":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? 200 13ms","method":"GET","requestID":"6bd93a312ed256fe3379bb67a7cfefa4","responseTime":13,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6bd93a312ed256fe3379bb67a7cfefa4"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07'","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07'","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2bccf9e0-4911-11ef-863d-25b977f1d961"} 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":"2bccf9e0-4911-11ef-863d-25b977f1d961","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":"2bccf9e0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"39f052966367562c9d199028f1055e32"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bd621a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:37Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47f67b4b-1e61-4c86-b25a-2a8b93a93be3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752357.0548153} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.809284,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bd621a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","rebac_allow":false,"scope_allow":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":"2bd621a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2bd621a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling 200 8ms","method":"POST","requestID":"2bd621a0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2bd7cf50-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:37Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d1193d0-90b1-4717-a94b-7e5a78ccef35","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752357.0654655} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.453288,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2bd7cf50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","rebac_allow":false,"scope_allow":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":"2bd7cf50-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2bd7cf50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling 200 8ms","method":"POST","requestID":"2bd7cf50-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling"} device-1 | {"device":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7063708965972667754 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:ng/A\r\na=ice-pwd:UVredY3b7WLPzy5MUh02blSj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6D:99:8D:95:24:50:10:0B:73:96:52:57:96:33:00:B2:5E:B6:C1:57:A0:CB:64:B8:CE:0C:89:9B:A3:F9:34:50\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2012376452 1 udp 2113937151 0730f9d7-bf1a-460d-b24e-353363854543.local 35129 typ host generation 0 ufrag ng/A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 | {"content":{"candidate":"candidate:3839478935 1 udp 1677729535 141.24.211.56 35129 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ng/A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","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/8cdaf972-1ba4-452c-b836-ff7ba64ae72c'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a660708620b541b0df179364001185f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6a660708620b541b0df179364001185f","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"}}},"level":"info","message":"received a callback","requestID":"6a660708620b541b0df179364001185f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"6a660708620b541b0df179364001185f","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"6a660708620b541b0df179364001185f"} device-1 | {"data":{"peerconnection":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","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/a227ab7d-497f-44d0-9c81-4d3a05226e07' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fbd583456925cf45ff635d53b76df02a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"fbd583456925cf45ff635d53b76df02a","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"}}},"level":"info","message":"received a callback","requestID":"fbd583456925cf45ff635d53b76df02a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2d1fb8a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa227ab7d-497f-44d0-9c81-4d3a05226e07","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78874efd-d67a-4fd0-b196-6b5463dc10a1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.2175725} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.839112,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d1fb8a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","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":"2d1fb8a0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2d1fb8a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07 200 13ms","method":"GET","requestID":"2d1fb8a0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"fbd583456925cf45ff635d53b76df02a","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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":"fbd583456925cf45ff635d53b76df02a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d2536e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a5547a2-df35-4848-a5ac-539875e134fe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.2535865} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.013899,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d2536e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","rebac_allow":false,"scope_allow":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":"2d2536e0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d2536e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling 200 14ms","method":"POST","requestID":"2d2536e0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d27cef0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f732cb2b-6220-4f5f-bb71-34c528e48af3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.2715483} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.746615,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d27cef0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","rebac_allow":false,"scope_allow":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":"2d27cef0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d27cef0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling 200 15ms","method":"POST","requestID":"2d27cef0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8","level":"info","message":"auth send jwt","requestID":"c6dcb8e329502058e98a56219d06a0a6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6dcb8e329502058e98a56219d06a0a6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/deb31d60-8acb-4b79-8226-abcb64592b25","requestID":"c6dcb8e329502058e98a56219d06a0a6"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.2265,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c6dcb8e329502058e98a56219d06a0a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752359,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6dcb8e329502058e98a56219d06a0a6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/deb31d60-8acb-4b79-8226-abcb64592b25","requestID":"c6dcb8e329502058e98a56219d06a0a6"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/deb31d60-8acb-4b79-8226-abcb64592b25 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6dcb8e329502058e98a56219d06a0a6"} experiment-1 | {"level":"info","message":"GET /experiments/deb31d60-8acb-4b79-8226-abcb64592b25 200 15ms","method":"GET","requestID":"c6dcb8e329502058e98a56219d06a0a6","responseTime":15,"status":200,"url":"/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8","level":"info","message":"auth send jwt","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/deb31d60-8acb-4b79-8226-abcb64592b25","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.219263,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752359,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Attempting to finish experiment","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2d342b00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.750642,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d342b00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752359,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d342b00-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07","device":"8cdaf972-1ba4-452c-b836-ff7ba64ae72c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d5553b94-7e8b-4445-a299-c6c58fcbe084","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/a227ab7d-497f-44d0-9c81-4d3a05226e07' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa227ab7d-497f-44d0-9c81-4d3a05226e07': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa227ab7d-497f-44d0-9c81-4d3a05226e07","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"095d1445-9239-4d5e-ba19-b836f964dd30","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.3699036} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"423ebf9d-e681-4b4d-b55f-b5b3f386248a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.3702548} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f3e7a461f5fddf379ed70b4d09195e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3f3e7a461f5fddf379ed70b4d09195e0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2d342b00-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7835853d3ec6d4dcab685b86fbd03a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"}}},"level":"info","message":"received a callback","requestID":"3f3e7a461f5fddf379ed70b4d09195e0"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b7835853d3ec6d4dcab685b86fbd03a4","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"}}},"level":"info","message":"received a callback","requestID":"b7835853d3ec6d4dcab685b86fbd03a4"} device-1 | {"data":{"peerconnection":"a227ab7d-497f-44d0-9c81-4d3a05226e07","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2d342b00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07 204 50ms","method":"DELETE","requestID":"2d342b00-4911-11ef-863d-25b977f1d961","responseTime":50,"status":204,"url":"/peerconnections/a227ab7d-497f-44d0-9c81-4d3a05226e07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"},"level":"info","message":"Successfully finished experiment","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d3f4e90-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cdaf972-1ba4-452c-b836-ff7ba64ae72c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f1b3225-f531-405d-b02f-1ec1fb1be1e3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.4262903} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.659852,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d3f4e90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c","object_type":"device","rebac_allow":false,"scope_allow":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":"2d3f4e90-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d3f4e90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling 200 16ms","method":"POST","requestID":"2d3f4e90-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/8cdaf972-1ba4-452c-b836-ff7ba64ae72c/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdeb31d60-8acb-4b79-8226-abcb64592b25': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdeb31d60-8acb-4b79-8226-abcb64592b25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"6ba099b6-a07f-4ece-a540-f06e476e52fc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.4336424} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"101867a9-1fff-4789-a258-2f85be1a86f3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.4343848} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d425bd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5553b94-7e8b-4445-a299-c6c58fcbe084","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba8772be-5b12-421c-ac4c-4a9a98e96761","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.4444861} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.871128,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d425bd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084","object_type":"device","rebac_allow":false,"scope_allow":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":"2d425bd0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d425bd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling 200 14ms","method":"POST","requestID":"2d425bd0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/d5553b94-7e8b-4445-a299-c6c58fcbe084/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/deb31d60-8acb-4b79-8226-abcb64592b25","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/deb31d60-8acb-4b79-8226-abcb64592b25 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":"9cd0bf5ec898a0fee4d837f2ce4a1151"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2799","request_time":"4.245","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"735093761e5fd4856976f785f063641a"} experiment-1 | {"level":"info","message":"DELETE /experiments/deb31d60-8acb-4b79-8226-abcb64592b25 204 181ms","method":"DELETE","requestID":"9cd0bf5ec898a0fee4d837f2ce4a1151","responseTime":181,"status":204,"url":"/experiments/deb31d60-8acb-4b79-8226-abcb64592b25"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"3f3e7a461f5fddf379ed70b4d09195e0","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"3f3e7a461f5fddf379ed70b4d09195e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"b7835853d3ec6d4dcab685b86fbd03a4","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"b7835853d3ec6d4dcab685b86fbd03a4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8","level":"info","message":"auth send jwt","requestID":"1b7278adf330e69128d29d8ab60b3b12"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b7278adf330e69128d29d8ab60b3b12","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b7278adf330e69128d29d8ab60b3b12"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.889954,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1b7278adf330e69128d29d8ab60b3b12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752359,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.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":"e78b46b41b4d519ea70bcc9a857d7f97"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","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/d5553b94-7e8b-4445-a299-c6c58fcbe084' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c86fda74-1923-4891-b03d-74b1dd03614e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5365648} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","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/8cdaf972-1ba4-452c-b836-ff7ba64ae72c' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84f874d1-f19f-4cc4-a347-c8ee21f588b2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5417688} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"495dd2ec-be9e-4316-9ef4-0370912cbb92","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5566204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45c68264-4fae-459a-9245-ad8e3f022034","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5567994} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.556597700Z"}]},"request_id":"f04cb82a-67f9-44de-b8d9-441f311cf666","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5617082} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b7278adf330e69128d29d8ab60b3b12"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b7278adf330e69128d29d8ab60b3b12"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"1b7278adf330e69128d29d8ab60b3b12","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8","level":"info","message":"auth send jwt","requestID":"d391e27c3498b56c94248202b68642da"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d391e27c3498b56c94248202b68642da","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d391e27c3498b56c94248202b68642da"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.7062,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d391e27c3498b56c94248202b68642da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752359,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM1OX0.PSCqwWVkGXkstgtgpnS5XWfjE1Ng5LsR7dbla8PU7y8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e7c5c718-79ea-4625-a4e0-3b0d0d01dbee","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.586978} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12fe45c9-6463-433b-b8dc-75f1f6a84e1e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.5919898} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5b7d273b-df9f-4437-9de7-47f20f623a8d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.6021504} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e59bbec-bd25-4fad-96b1-3362c072be6f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.602291} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"23292865-a86a-4894-8f0d-039220192188","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752359.6066713} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d391e27c3498b56c94248202b68642da"} gateway-1 | {"time_local":"23/Jul/2024:16:32:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d391e27c3498b56c94248202b68642da"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"d391e27c3498b56c94248202b68642da","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MH0.45WevdGbydEnHLVMZr9jM49_JlTEQRPfYMnL12B4HYU","level":"info","message":"auth send jwt","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:40Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312116,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752360,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MH0.45WevdGbydEnHLVMZr9jM49_JlTEQRPfYMnL12B4HYU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"6110f071-bad2-4b2c-bfbc-20e9eed8c3ed","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752360.0999162} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bce9c4fa-f07a-4345-bcfd-bde1f36ba671","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752360.1055636} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"e8ddbda0-5ce8-4c0d-82a3-4f422cf03131","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752360.1176767} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d"} device-1 | {"level":"info","message":"PATCH /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06 200 34ms","method":"PATCH","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d","responseTime":34,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"} gateway-1 | {"time_local":"23/Jul/2024:16:32:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"62d9a86b6a0a5ecf7a3819fb4d0c105d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MH0.45WevdGbydEnHLVMZr9jM49_JlTEQRPfYMnL12B4HYU","level":"info","message":"auth send jwt","requestID":"3ee1f05d66ad56d4bd421df347b1b729"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ee1f05d66ad56d4bd421df347b1b729","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3ee1f05d66ad56d4bd421df347b1b729"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:40Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156508,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ee1f05d66ad56d4bd421df347b1b729","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752360,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MH0.45WevdGbydEnHLVMZr9jM49_JlTEQRPfYMnL12B4HYU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ee1f05d66ad56d4bd421df347b1b729","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3ee1f05d66ad56d4bd421df347b1b729"} gateway-1 | {"time_local":"23/Jul/2024:16:32:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3ee1f05d66ad56d4bd421df347b1b729"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/websocket 200 21ms","method":"POST","requestID":"3ee1f05d66ad56d4bd421df347b1b729","responseTime":21,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"121fe80df5e0e47879edd277cfffd339","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"121fe80df5e0e47879edd277cfffd339","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/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":"121fe80df5e0e47879edd277cfffd339"} device-1 | {"level":"info","message":"OPTIONS /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/websocket 200 2ms","method":"OPTIONS","requestID":"121fe80df5e0e47879edd277cfffd339","responseTime":2,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.199036,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/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":"e8d4d8ae8f9ec183bbfdc937f8403b13"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/websocket 200 22ms","method":"POST","requestID":"e8d4d8ae8f9ec183bbfdc937f8403b13","responseTime":22,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"337ebf9158bc663b95f0ee8f403b110e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"337ebf9158bc663b95f0ee8f403b110e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"337ebf9158bc663b95f0ee8f403b110e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880194,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"337ebf9158bc663b95f0ee8f403b110e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"337ebf9158bc663b95f0ee8f403b110e","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.556597700Z"}]},"request_id":"cda040de-5494-415b-b1e3-9ecd86803475","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.6435542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"337ebf9158bc663b95f0ee8f403b110e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"337ebf9158bc663b95f0ee8f403b110e"} device-1 | {"level":"info","message":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? 200 17ms","method":"GET","requestID":"337ebf9158bc663b95f0ee8f403b110e","responseTime":17,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"337ebf9158bc663b95f0ee8f403b110e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"b8861f19889b021aca94862e5aff1cb2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b8861f19889b021aca94862e5aff1cb2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b8861f19889b021aca94862e5aff1cb2"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217867,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b8861f19889b021aca94862e5aff1cb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b8861f19889b021aca94862e5aff1cb2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"b7d224a8-4958-4467-9b65-e0e8b6f70de6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.667121} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b8861f19889b021aca94862e5aff1cb2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b8861f19889b021aca94862e5aff1cb2"} device-1 | {"level":"info","message":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? 200 15ms","method":"GET","requestID":"b8861f19889b021aca94862e5aff1cb2","responseTime":15,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b8861f19889b021aca94862e5aff1cb2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0967f0c22efa21f4b56e7d70af5c64a4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.179701,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0967f0c22efa21f4b56e7d70af5c64a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0967f0c22efa21f4b56e7d70af5c64a4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to run experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to book experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully booked experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2e9e6960-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2e9eb780-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.878125,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2e9e6960-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2e9e6960-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.516081,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2e9eb780-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2e9eb780-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.556597700Z"}]},"request_id":"0806488e-45ba-4ff4-b46a-49eaff7e4c82","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.7320182} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2e9e6960-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"9cf4e17b-2a8c-43d2-a769-7c3567af926d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.7383661} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2e9e6960-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2e9eb780-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? 200 22ms","method":"GET","requestID":"2e9e6960-4911-11ef-863d-25b977f1d961","responseTime":22,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2e9eb780-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? 200 24ms","method":"GET","requestID":"2e9eb780-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Setting up experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully set up experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ea9b400-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2eaa0220-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2eaa2930-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully running experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283324,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ea9b400-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2ea9b400-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.404083,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2eaa0220-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2eaa0220-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60520","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.556597700Z"}]},"request_id":"c0cea601-9079-4c9f-b70d-93d86b8fd702","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8065956} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad409416-47fb-41d8-b99b-0702583976ca","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8068562} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ea9b400-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"085452f7-2193-4eb2-aeed-515731f9df9e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8083212} authorization-1 | {"client_addr":"127.0.0.1:60520","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.17157,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2eaa2930-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","rebac_allow":false,"scope_allow":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":"2eaa2930-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2eaa0220-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2eaa2930-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling 200 18ms","method":"POST","requestID":"2eaa2930-4911-11ef-863d-25b977f1d961","responseTime":18,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ea9b400-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? 200 21ms","method":"GET","requestID":"2ea9b400-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2eaa0220-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? 200 20ms","method":"GET","requestID":"2eaa0220-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ead3670-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F185ee272-53d5-44ac-a298-183102f7cff1#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F185ee272-53d5-44ac-a298-183102f7cff1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"e064f1f5-555b-451d-b6ee-91f59d4704b3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.815828} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0ce2c46d-1292-4f96-b4fb-c765b187a7d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.816221} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ead8490-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0967f0c22efa21f4b56e7d70af5c64a4","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e3494ba-230b-42e4-a315-1ed8b858fb76","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8212292} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.414563,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ead3670-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","rebac_allow":false,"scope_allow":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":"2ead3670-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19670f6e-ea30-425d-bea6-c8c7de30069f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8229537} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.031039,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ead8490-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","rebac_allow":false,"scope_allow":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":"2ead8490-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"0967f0c22efa21f4b56e7d70af5c64a4","responseTime":147,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ead3670-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling 200 13ms","method":"POST","requestID":"2ead3670-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ead8490-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling 200 12ms","method":"POST","requestID":"2ead8490-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"bace3626d28bd17f446f10dcd1a2d42d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bace3626d28bd17f446f10dcd1a2d42d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2eafa770-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bace3626d28bd17f446f10dcd1a2d42d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60516","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715805,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bace3626d28bd17f446f10dcd1a2d42d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bace3626d28bd17f446f10dcd1a2d42d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbad6be7-beb1-4955-96a4-bcacb45560d3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8354464} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.189555,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2eafa770-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","rebac_allow":false,"scope_allow":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":"2eafa770-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.556597700Z"}]},"request_id":"e9d4531e-3b82-464c-8980-b8496c550f0d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.838801} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2eafa770-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bace3626d28bd17f446f10dcd1a2d42d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling 200 8ms","method":"POST","requestID":"2eafa770-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Building connection plan","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} 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":"9d74c4e6-5dea-43cb-8a50-4e91918eef59"},{"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":"3a270df3-135c-4901-84bf-676de997130a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"0dd25f67-6c6f-4db7-b43e-e93c02dffadd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bace3626d28bd17f446f10dcd1a2d42d"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bace3626d28bd17f446f10dcd1a2d42d"} device-1 | {"level":"info","message":"GET /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122? 200 12ms","method":"GET","requestID":"bace3626d28bd17f446f10dcd1a2d42d","responseTime":12,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.892707,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2eb15520-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2eb15520-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE","level":"info","message":"auth send jwt","requestID":"35820874b97337db6bf9bf8d3aef62da"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"35820874b97337db6bf9bf8d3aef62da","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35820874b97337db6bf9bf8d3aef62da"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.756714,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35820874b97337db6bf9bf8d3aef62da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752361,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2MX0.iFXmT4ePyaizB9V_-onQPMuoz-hsJftcxoep_a427KE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"35820874b97337db6bf9bf8d3aef62da","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:39.602126442Z"}]},"request_id":"a74b9cab-162a-4a44-ba53-2d2e27c88d54","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8561227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"35820874b97337db6bf9bf8d3aef62da","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"cc73acc0-ff59-48f7-bc1a-9bd0b87c774c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8571336} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6970b0a1-cd94-4c96-9fea-924cca8c0d1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.8573384} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2eb15520-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35820874b97337db6bf9bf8d3aef62da"} gateway-1 | {"time_local":"23/Jul/2024:16:32:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"35820874b97337db6bf9bf8d3aef62da"} device-1 | {"level":"info","message":"GET /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06? 200 11ms","method":"GET","requestID":"35820874b97337db6bf9bf8d3aef62da","responseTime":11,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b'","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b'","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2eb15520-4911-11ef-863d-25b977f1d961"} 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":"2eb15520-4911-11ef-863d-25b977f1d961","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":"2eb15520-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0967f0c22efa21f4b56e7d70af5c64a4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2eba7ce0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2e86def-77e0-4a66-bf77-32f4e44080f8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.9065752} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.903691,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2eba7ce0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","rebac_allow":false,"scope_allow":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":"2eba7ce0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2eba7ce0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling 200 8ms","method":"POST","requestID":"2eba7ce0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ebc0380-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"402cb981-3469-4873-b0d4-363982f330d9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752361.917197} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.727378,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ebc0380-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","rebac_allow":false,"scope_allow":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":"2ebc0380-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ebc0380-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling 200 11ms","method":"POST","requestID":"2ebc0380-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8981819721113558794 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:qP+L\r\na=ice-pwd:pPyOuYJkkywsa+iAqP2Hkpv0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AF:A9:F7:0F:70:11:8A:7C:EA:A3:22:B0:C8:0F:9A:03:09:3D:C2:C5:AB:38:3E:DE:63:2E:E9:3F:43:9A:FA:F9\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/47cbce12-a32c-464a-8e14-32337ea9c96b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1ea8e3259c877f4e322fccbdbcf8cf6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e1ea8e3259c877f4e322fccbdbcf8cf6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"}}},"level":"info","message":"received a callback","requestID":"e1ea8e3259c877f4e322fccbdbcf8cf6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"e1ea8e3259c877f4e322fccbdbcf8cf6","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"e1ea8e3259c877f4e322fccbdbcf8cf6"} device-1 | {"device":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 | {"content":{"candidate":"candidate:1229410872 1 udp 2113937151 027531ef-ead3-4f62-972b-9a244d007312.local 35450 typ host generation 0 ufrag qP+L network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3664573227 1 udp 1677729535 141.24.211.56 35450 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag qP+L network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1681934553 1 udp 33562623 141.24.210.113 56215 typ relay raddr 141.24.211.56 rport 35450 generation 0 ufrag qP+L network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","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/be19068b-4a3f-4904-b3f0-5af7f8cba122'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122'"} device-1 | {"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"47cbce12-a32c-464a-8e14-32337ea9c96b","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/47cbce12-a32c-464a-8e14-32337ea9c96b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6650c184b24f60a3655b05b3edfb6422","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6650c184b24f60a3655b05b3edfb6422","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"}}},"level":"info","message":"received a callback","requestID":"6650c184b24f60a3655b05b3edfb6422"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2ff63130-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:43Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47cbce12-a32c-464a-8e14-32337ea9c96b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca3aea35-7fdd-4bf9-a607-a3d56307e036","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752363.97604} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.683026,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ff63130-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","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":"2ff63130-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2ff63130-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b 200 9ms","method":"GET","requestID":"2ff63130-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"6650c184b24f60a3655b05b3edfb6422","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"6650c184b24f60a3655b05b3edfb6422"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ffa9e00-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fed4be9-00c8-4e6a-85fa-4a08bc163d10","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.0058289} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.374063,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ffa9e00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","rebac_allow":false,"scope_allow":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":"2ffa9e00-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ffa9e00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling 200 10ms","method":"POST","requestID":"2ffa9e00-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ffc72c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07ae5787-ea21-482c-8f88-deb2dc7ee55a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.0177596} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.206436,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2ffc72c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","rebac_allow":false,"scope_allow":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":"2ffc72c0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ffc72c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling 200 10ms","method":"POST","requestID":"2ffc72c0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"5a8f9ba197119f4f6cc5816244f161b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5a8f9ba197119f4f6cc5816244f161b8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/185ee272-53d5-44ac-a298-183102f7cff1","requestID":"5a8f9ba197119f4f6cc5816244f161b8"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.824381,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"5a8f9ba197119f4f6cc5816244f161b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a8f9ba197119f4f6cc5816244f161b8","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/185ee272-53d5-44ac-a298-183102f7cff1","requestID":"5a8f9ba197119f4f6cc5816244f161b8"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/185ee272-53d5-44ac-a298-183102f7cff1 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a8f9ba197119f4f6cc5816244f161b8"} experiment-1 | {"level":"info","message":"GET /experiments/185ee272-53d5-44ac-a298-183102f7cff1 200 14ms","method":"GET","requestID":"5a8f9ba197119f4f6cc5816244f161b8","responseTime":14,"status":200,"url":"/experiments/185ee272-53d5-44ac-a298-183102f7cff1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"b933deca7a2e6e9f5e853bb63418952f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b933deca7a2e6e9f5e853bb63418952f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/185ee272-53d5-44ac-a298-183102f7cff1","requestID":"b933deca7a2e6e9f5e853bb63418952f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.801977,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b933deca7a2e6e9f5e853bb63418952f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b933deca7a2e6e9f5e853bb63418952f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Attempting to finish experiment","requestID":"b933deca7a2e6e9f5e853bb63418952f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"30083290-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.375062,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"30083290-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30083290-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b","device":"be19068b-4a3f-4904-b3f0-5af7f8cba122","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"40d8cfce-594c-4b51-ab19-f2f23261ae06","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/47cbce12-a32c-464a-8e14-32337ea9c96b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47cbce12-a32c-464a-8e14-32337ea9c96b': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47cbce12-a32c-464a-8e14-32337ea9c96b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"e5ad39fa-d12f-473c-9038-f4183ae35ea3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1149747} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ca00580f409ab2f9a69e960c72d2589","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7ca00580f409ab2f9a69e960c72d2589","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25b7b206-6598-4085-910b-2b6a485d24b0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1157358} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2785cb66823bb5ffa03069561d6bbcd2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"30083290-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"}}},"level":"info","message":"received a callback","requestID":"7ca00580f409ab2f9a69e960c72d2589"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2785cb66823bb5ffa03069561d6bbcd2","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"}}},"level":"info","message":"received a callback","requestID":"2785cb66823bb5ffa03069561d6bbcd2"} device-1 | {"data":{"peerconnection":"47cbce12-a32c-464a-8e14-32337ea9c96b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"30083290-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b 204 49ms","method":"DELETE","requestID":"30083290-4911-11ef-863d-25b977f1d961","responseTime":49,"status":204,"url":"/peerconnections/47cbce12-a32c-464a-8e14-32337ea9c96b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/185ee272-53d5-44ac-a298-183102f7cff1"},"level":"info","message":"Successfully finished experiment","requestID":"b933deca7a2e6e9f5e853bb63418952f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30126bc0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40d8cfce-594c-4b51-ab19-f2f23261ae06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"382f030b-3944-4f75-b432-dc3c8dd2d300","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1609297} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.576544,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"30126bc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06","object_type":"device","rebac_allow":false,"scope_allow":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":"30126bc0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30126bc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling 200 10ms","method":"POST","requestID":"30126bc0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F185ee272-53d5-44ac-a298-183102f7cff1': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F185ee272-53d5-44ac-a298-183102f7cff1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"adb92297-6320-44e1-9f90-f6438dc863d0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1675038} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b79ff15-051a-4166-8ec0-d95527173592","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1678321} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30146790-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b933deca7a2e6e9f5e853bb63418952f","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe19068b-4a3f-4904-b3f0-5af7f8cba122","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4072ad58-e573-49af-8108-da44a32a348d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.1749005} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.112362,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"30146790-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122","object_type":"device","rebac_allow":false,"scope_allow":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":"30146790-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30146790-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling 200 10ms","method":"POST","requestID":"30146790-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/be19068b-4a3f-4904-b3f0-5af7f8cba122/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/185ee272-53d5-44ac-a298-183102f7cff1","requestID":"b933deca7a2e6e9f5e853bb63418952f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/185ee272-53d5-44ac-a298-183102f7cff1 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":"b933deca7a2e6e9f5e853bb63418952f"} experiment-1 | {"level":"info","message":"DELETE /experiments/185ee272-53d5-44ac-a298-183102f7cff1 204 156ms","method":"DELETE","requestID":"b933deca7a2e6e9f5e853bb63418952f","responseTime":156,"status":204,"url":"/experiments/185ee272-53d5-44ac-a298-183102f7cff1"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3192","request_time":"4.077","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"319fa863c82fb49ccb61ec33591f811a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"7ca00580f409ab2f9a69e960c72d2589","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ca00580f409ab2f9a69e960c72d2589"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"2785cb66823bb5ffa03069561d6bbcd2","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"2785cb66823bb5ffa03069561d6bbcd2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"be60ddae5807b546a21540f16bca40a2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"be60ddae5807b546a21540f16bca40a2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"be60ddae5807b546a21540f16bca40a2"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.818923,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"be60ddae5807b546a21540f16bca40a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2704","request_time":"2.632","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19b8cec104b35f52f6d59731ff39be25"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/40d8cfce-594c-4b51-ab19-f2f23261ae06' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"78b3f6f9-735b-46fa-8698-cc5842ec7918","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.2613974} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","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/be19068b-4a3f-4904-b3f0-5af7f8cba122' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"efdd6db7-55f4-456e-b80a-a4a3c245b836","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.2661679} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"17a32eab-aa98-4522-b23c-1dc21115b1d3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.2756262} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce84583b-000e-485f-85a2-6be947ee9a17","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.2757285} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"1fb79ba0-85ff-4684-a451-0126967f0f0a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.2798128} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"be60ddae5807b546a21540f16bca40a2"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be60ddae5807b546a21540f16bca40a2"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"be60ddae5807b546a21540f16bca40a2","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"0e5919129c20b425e0d32bd319201d68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0e5919129c20b425e0d32bd319201d68","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0e5919129c20b425e0d32bd319201d68"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.656907,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0e5919129c20b425e0d32bd319201d68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"663f440f-14d9-4298-8370-c76bf9c4a257","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.3086164} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b923e30-25f4-45f5-926f-3ce1d59708c7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.3135407} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"e0ca0d5f-89f8-4582-96a6-118443372607","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.3241835} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18edd758-724e-4da1-a30e-0e5e721599d0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.3244536} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.324150653Z"}]},"request_id":"97768c7e-5f16-4293-813b-0af1c5f182b6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.3286052} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0e5919129c20b425e0d32bd319201d68"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e5919129c20b425e0d32bd319201d68"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"0e5919129c20b425e0d32bd319201d68","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"2d3bf40c1d59840485d47c2b7883b384"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2d3bf40c1d59840485d47c2b7883b384","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2d3bf40c1d59840485d47c2b7883b384"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.229855,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2d3bf40c1d59840485d47c2b7883b384","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d3bf40c1d59840485d47c2b7883b384","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"ec9c58cf-f483-4286-bad7-1377592d83ba","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.8248491} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d3bf40c1d59840485d47c2b7883b384","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7326a45-ba9b-4571-8946-9ad98798a55e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.8321266} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2d3bf40c1d59840485d47c2b7883b384","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"f327e69a-cc71-4723-a718-50521aef6b0e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752364.8445816} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d3bf40c1d59840485d47c2b7883b384","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2d3bf40c1d59840485d47c2b7883b384"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2d3bf40c1d59840485d47c2b7883b384"} device-1 | {"level":"info","message":"PATCH /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19 200 39ms","method":"PATCH","requestID":"2d3bf40c1d59840485d47c2b7883b384","responseTime":39,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY","level":"info","message":"auth send jwt","requestID":"54df72a6d93e55762a1bf76f1846354c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54df72a6d93e55762a1bf76f1846354c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"54df72a6d93e55762a1bf76f1846354c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.979103,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"54df72a6d93e55762a1bf76f1846354c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752364,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2NH0.K4m-4n8txl07GebNi0MMX6Kg87ge_B0R8kDyBGe3UdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54df72a6d93e55762a1bf76f1846354c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"54df72a6d93e55762a1bf76f1846354c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"54df72a6d93e55762a1bf76f1846354c"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/websocket 200 22ms","method":"POST","requestID":"54df72a6d93e55762a1bf76f1846354c","responseTime":22,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76861a2aa40699b1e361f4b664da000b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"76861a2aa40699b1e361f4b664da000b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/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":"76861a2aa40699b1e361f4b664da000b"} device-1 | {"level":"info","message":"OPTIONS /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/websocket 200 1ms","method":"OPTIONS","requestID":"76861a2aa40699b1e361f4b664da000b","responseTime":1,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"853c9c467aa169e5b2338cf8ff924e73"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"853c9c467aa169e5b2338cf8ff924e73","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"853c9c467aa169e5b2338cf8ff924e73"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897493,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"853c9c467aa169e5b2338cf8ff924e73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"853c9c467aa169e5b2338cf8ff924e73","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"853c9c467aa169e5b2338cf8ff924e73"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/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":"853c9c467aa169e5b2338cf8ff924e73"} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/websocket 200 19ms","method":"POST","requestID":"853c9c467aa169e5b2338cf8ff924e73","responseTime":19,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"8b7c6e3b01232b55b6a95635522785ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8b7c6e3b01232b55b6a95635522785ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8b7c6e3b01232b55b6a95635522785ef"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.109823,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8b7c6e3b01232b55b6a95635522785ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b7c6e3b01232b55b6a95635522785ef","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"c706f7a8-fba1-4f56-9d3d-ebb0b63b3110","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.3586485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8b7c6e3b01232b55b6a95635522785ef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8b7c6e3b01232b55b6a95635522785ef"} device-1 | {"level":"info","message":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? 200 13ms","method":"GET","requestID":"8b7c6e3b01232b55b6a95635522785ef","responseTime":13,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b7c6e3b01232b55b6a95635522785ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"187603b3ac794839a628e670f2c847a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"187603b3ac794839a628e670f2c847a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"187603b3ac794839a628e670f2c847a5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.59953,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"187603b3ac794839a628e670f2c847a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"187603b3ac794839a628e670f2c847a5","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.324150653Z"}]},"request_id":"28c0fb23-37d6-46f3-8fbc-51bb8f4ad92e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.3817413} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"187603b3ac794839a628e670f2c847a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"187603b3ac794839a628e670f2c847a5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"187603b3ac794839a628e670f2c847a5"} device-1 | {"level":"info","message":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? 200 16ms","method":"GET","requestID":"187603b3ac794839a628e670f2c847a5","responseTime":16,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"1339702c55fbcd48c733f1bed7569acf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1339702c55fbcd48c733f1bed7569acf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1339702c55fbcd48c733f1bed7569acf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.256416,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1339702c55fbcd48c733f1bed7569acf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1339702c55fbcd48c733f1bed7569acf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to run experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to book experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully booked experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"316e2b30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"316e7950-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917566,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"316e2b30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"316e2b30-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977119,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"316e7950-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"316e7950-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"a544a751-5083-4b25-b796-2b1078f56898","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.4439807} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"316e2b30-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.324150653Z"}]},"request_id":"3ecf1a2f-0cf1-424c-8949-43715575f7fe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.4479613} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"316e2b30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? 200 14ms","method":"GET","requestID":"316e2b30-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"316e7950-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"316e7950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? 200 15ms","method":"GET","requestID":"316e7950-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Setting up experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully set up experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"317900a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"317927b0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully running experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"317975d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395778,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"317900a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"317900a0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.239832,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"317927b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"317927b0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60540","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"b20d8ff5-6d32-47b9-95b9-aca81f4b8986","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5224586} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6661f7a0-dd80-4a56-b54a-0558d8c90dda","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5226738} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"317900a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60540","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.813291,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"317975d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","rebac_allow":false,"scope_allow":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":"317975d0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.324150653Z"}]},"request_id":"1030932a-2085-4850-a36d-051933cf5914","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5244813} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"317927b0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"317900a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? 200 26ms","method":"GET","requestID":"317900a0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"317975d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling 200 24ms","method":"POST","requestID":"317975d0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5bca3ef-3a00-47b5-86c3-628841fdde1c#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5bca3ef-3a00-47b5-86c3-628841fdde1c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"0bde2d9e-f452-42cb-ac70-1af3efed71dc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5336304} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"317927b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? 200 28ms","method":"GET","requestID":"317927b0-4911-11ef-863d-25b977f1d961","responseTime":28,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"732135f4-ddfb-4236-af25-e95a2db02362","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5342858} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"1339702c55fbcd48c733f1bed7569acf","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"317d9480-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"317e09b0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0ee8f93-4d25-49bf-989c-a2de76f3d754","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.542993} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1339702c55fbcd48c733f1bed7569acf"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.500218,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"1339702c55fbcd48c733f1bed7569acf","responseTime":150,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1339702c55fbcd48c733f1bed7569acf"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"317d9480-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","rebac_allow":false,"scope_allow":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":"317d9480-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37246c09-ed14-465c-ac6d-9bb78402778c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5451767} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.239967,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"317e09b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","rebac_allow":false,"scope_allow":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":"317e09b0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"0dd1361a3f943e011c35bc9782a2a64a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"317d9480-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0dd1361a3f943e011c35bc9782a2a64a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling 200 15ms","method":"POST","requestID":"317d9480-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"317e09b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling 200 14ms","method":"POST","requestID":"317e09b0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dd1361a3f943e011c35bc9782a2a64a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"31807ab0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899425,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0dd1361a3f943e011c35bc9782a2a64a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0dd1361a3f943e011c35bc9782a2a64a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.200507,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44d57548-8826-451e-b4f2-e4f27ae14651","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5603344} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"31807ab0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","rebac_allow":false,"scope_allow":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":"31807ab0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.275598965Z"}]},"request_id":"ace165c1-cbb6-4e33-939a-b29d394db3bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.568134} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"31807ab0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling 200 13ms","method":"POST","requestID":"31807ab0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0dd1361a3f943e011c35bc9782a2a64a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Building connection plan","requestID":"1339702c55fbcd48c733f1bed7569acf"} 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":"09134fb7-b793-47b5-b1f2-a15a49ee3ce8"},{"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":"ffa2caed-aa32-42cb-88bc-0731ebf09091"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a90255f4-4114-4302-91b5-db9c4066b05e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1339702c55fbcd48c733f1bed7569acf"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1339702c55fbcd48c733f1bed7569acf"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dd1361a3f943e011c35bc9782a2a64a"} device-1 | {"level":"info","message":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? 200 20ms","method":"GET","requestID":"0dd1361a3f943e011c35bc9782a2a64a","responseTime":20,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0dd1361a3f943e011c35bc9782a2a64a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":2.763183,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3182ebb0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8","level":"info","message":"auth send jwt","requestID":"4eeb8894705199c7e07834cca5088406"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4eeb8894705199c7e07834cca5088406","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eeb8894705199c7e07834cca5088406"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00691,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4eeb8894705199c7e07834cca5088406","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752366,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2Nn0.J4Abg71TeNo2R0DgPN_rXW-boj1r5WBlYASXVVlLaL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4eeb8894705199c7e07834cca5088406","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"d0900373-b86b-4da8-8f16-ec9f4c7bc419","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5880392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e06e4c1-24aa-4b0b-b665-7a0e0a3d414b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5883296} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:44.324150653Z"}]},"request_id":"284a6d78-7482-452e-aea9-bfafe0c358cd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.5894837} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4eeb8894705199c7e07834cca5088406","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eeb8894705199c7e07834cca5088406"} gateway-1 | {"time_local":"23/Jul/2024:16:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4eeb8894705199c7e07834cca5088406"} device-1 | {"level":"info","message":"GET /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0? 200 15ms","method":"GET","requestID":"4eeb8894705199c7e07834cca5088406","responseTime":15,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62'","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62'","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3182ebb0-4911-11ef-863d-25b977f1d961"} 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":"3182ebb0-4911-11ef-863d-25b977f1d961","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":"3182ebb0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1339702c55fbcd48c733f1bed7569acf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"318c88a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34424f4a-7c4e-4acd-b6c7-4498353e2c8a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.639263} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.674963,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"318c88a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","rebac_allow":false,"scope_allow":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":"318c88a0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"318c88a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling 200 9ms","method":"POST","requestID":"318c88a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"318e3650-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:46Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"193fc8a3-74ea-46de-9b84-648f7bd6493c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752366.6499238} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.596609,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:46Z"} device-1 | {"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"318e3650-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","rebac_allow":false,"scope_allow":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":"318e3650-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"318e3650-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling 200 10ms","method":"POST","requestID":"318e3650-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2533998976671683420 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:OXFr\r\na=ice-pwd:4pfMFMKL8G17ravsqzGQwFnA\r\na=ice-options:trickle\r\na=fingerprint:sha-256 06:14:BB:08:0E:41:F5:48:87:24:81:A3:AF:02:C0:E9:7E:7D:45:91:E8:B9:2D:14:B2:24:FA:7B:48:27:69:7F\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2698582138 1 udp 2113937151 31b3e914-e463-4898-a01f-9ba726e9e1dd.local 39006 typ host generation 0 ufrag OXFr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:871545193 1 udp 1677729535 141.24.211.56 39006 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag OXFr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","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/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e8754038fb018a161d18c0e1fc33655","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6e8754038fb018a161d18c0e1fc33655","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"}}},"level":"info","message":"received a callback","requestID":"6e8754038fb018a161d18c0e1fc33655"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"6e8754038fb018a161d18c0e1fc33655","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e8754038fb018a161d18c0e1fc33655"} device-1 | {"data":{"peerconnection":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","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/4ad2f476-6b03-4a47-8852-555ac0263a62' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1f65dafc36b3e06bc4be751b4617ced","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b1f65dafc36b3e06bc4be751b4617ced","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"}}},"level":"info","message":"received a callback","requestID":"b1f65dafc36b3e06bc4be751b4617ced"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"32cc0d80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad2f476-6b03-4a47-8852-555ac0263a62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecac3e19-8f3a-46dc-82d9-7b26e2cb9de1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.7343166} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.226053,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32cc0d80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","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":"32cc0d80-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"32cc0d80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62 200 10ms","method":"GET","requestID":"32cc0d80-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"b1f65dafc36b3e06bc4be751b4617ced","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1f65dafc36b3e06bc4be751b4617ced"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32d1b2d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e7d4d96-dc31-4ad3-8d36-274616ed1fb9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.7714517} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.734659,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32d1b2d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","rebac_allow":false,"scope_allow":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":"32d1b2d0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32d1b2d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling 200 11ms","method":"POST","requestID":"32d1b2d0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32d3aea0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd504b39-1209-4733-b0e3-3cd5c14a7421","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.7842557} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.633693,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32d3aea0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","rebac_allow":false,"scope_allow":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":"32d3aea0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32d3aea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling 200 12ms","method":"POST","requestID":"32d3aea0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OH0.qcGf_1jhH4ZTluvUO51L1dAvPNOl2sMkkWC-h_QjVUY","level":"info","message":"auth send jwt","requestID":"7b58a1495e7d9126b000b67353d8ff02"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7b58a1495e7d9126b000b67353d8ff02","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","requestID":"7b58a1495e7d9126b000b67353d8ff02"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.209142,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"7b58a1495e7d9126b000b67353d8ff02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752368,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OH0.qcGf_1jhH4ZTluvUO51L1dAvPNOl2sMkkWC-h_QjVUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b58a1495e7d9126b000b67353d8ff02","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","requestID":"7b58a1495e7d9126b000b67353d8ff02"} gateway-1 | {"time_local":"23/Jul/2024:16:32:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b58a1495e7d9126b000b67353d8ff02"} experiment-1 | {"level":"info","message":"GET /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c 200 17ms","method":"GET","requestID":"7b58a1495e7d9126b000b67353d8ff02","responseTime":17,"status":200,"url":"/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OH0.qcGf_1jhH4ZTluvUO51L1dAvPNOl2sMkkWC-h_QjVUY","level":"info","message":"auth send jwt","requestID":"a143d680598958b65c8b18617be97b66"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a143d680598958b65c8b18617be97b66","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","requestID":"a143d680598958b65c8b18617be97b66"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.306559,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a143d680598958b65c8b18617be97b66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752368,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OH0.qcGf_1jhH4ZTluvUO51L1dAvPNOl2sMkkWC-h_QjVUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a143d680598958b65c8b18617be97b66","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Attempting to finish experiment","requestID":"a143d680598958b65c8b18617be97b66"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"32e16a40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.354895,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32e16a40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752368,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OH0.qcGf_1jhH4ZTluvUO51L1dAvPNOl2sMkkWC-h_QjVUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"32e16a40-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62","device":"5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"80287d3d-ef78-4783-8a0e-24c1446ffc19","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/4ad2f476-6b03-4a47-8852-555ac0263a62' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad2f476-6b03-4a47-8852-555ac0263a62","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad2f476-6b03-4a47-8852-555ac0263a62': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad2f476-6b03-4a47-8852-555ac0263a62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"f96a760f-ef56-48b8-95d9-7dedcc492727","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.894451} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53c87699-eb59-4b9e-abe4-25c743e6e42e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.8952394} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85c829f08c421ac2ab24d9b013307c5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"32e16a40-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"85c829f08c421ac2ab24d9b013307c5a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"}}},"level":"info","message":"received a callback","requestID":"85c829f08c421ac2ab24d9b013307c5a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2933f5ec12d4e01167669f30603dd90","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d2933f5ec12d4e01167669f30603dd90","responseTime":3,"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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"}}},"level":"info","message":"received a callback","requestID":"d2933f5ec12d4e01167669f30603dd90"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"32e16a40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62 204 49ms","method":"DELETE","requestID":"32e16a40-4911-11ef-863d-25b977f1d961","responseTime":49,"status":204,"url":"/peerconnections/4ad2f476-6b03-4a47-8852-555ac0263a62"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"},"level":"info","message":"Successfully finished experiment","requestID":"a143d680598958b65c8b18617be97b66"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32ec66c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a2efee6-cf34-411d-8d81-eca964a0b9f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.9485133} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.392877,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32ec66c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0","object_type":"device","rebac_allow":false,"scope_allow":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":"32ec66c0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32ec66c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5bca3ef-3a00-47b5-86c3-628841fdde1c': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa5bca3ef-3a00-47b5-86c3-628841fdde1c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"86155c50-bff5-4180-bc2b-816e90174ab2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.9550512} device-1 | {"level":"info","message":"POST /devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/signaling 200 15ms","method":"POST","requestID":"32ec66c0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45907176-4ea5-43dc-86de-49bc17f01d3b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.9558957} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a143d680598958b65c8b18617be97b66","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32ef4cf0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F80287d3d-ef78-4783-8a0e-24c1446ffc19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75e63b8f-4890-452d-b4e5-7ba7bc2ba3db","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752368.966667} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.897052,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"32ef4cf0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19","object_type":"device","rebac_allow":false,"scope_allow":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":"32ef4cf0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32ef4cf0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling 200 14ms","method":"POST","requestID":"32ef4cf0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/80287d3d-ef78-4783-8a0e-24c1446ffc19/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c","requestID":"a143d680598958b65c8b18617be97b66"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a143d680598958b65c8b18617be97b66"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2800","request_time":"4.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c159c75972b14ea47b998e59f6ea488c"} experiment-1 | {"level":"info","message":"DELETE /experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c 204 180ms","method":"DELETE","requestID":"a143d680598958b65c8b18617be97b66","responseTime":180,"status":204,"url":"/experiments/a5bca3ef-3a00-47b5-86c3-628841fdde1c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"85c829f08c421ac2ab24d9b013307c5a","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"85c829f08c421ac2ab24d9b013307c5a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"d2933f5ec12d4e01167669f30603dd90","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"d2933f5ec12d4e01167669f30603dd90"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0","level":"info","message":"auth send jwt","requestID":"a200fa6813b6a4965eef63dca41d8375"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a200fa6813b6a4965eef63dca41d8375","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a200fa6813b6a4965eef63dca41d8375"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.713","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82290dbcc122187ce646b54c0c70ef1e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.967264,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a200fa6813b6a4965eef63dca41d8375","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752369,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","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/80287d3d-ef78-4783-8a0e-24c1446ffc19' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bdf7a974-34b2-43a9-9697-00d4644424f7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.0612233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","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/5a81320e-80bf-47b8-8cdf-7844fbd0c1c0' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e00db75-3f84-4c99-86bf-e141c160f769","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.0666792} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"2688b398-a2a1-40bf-8586-3f64c0586e8c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.0759823} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"986a0abc-2005-460f-9d7b-22b6b0b18039","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.0766034} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"256b17d7-3c98-43d3-90d6-523ebe1b0b78","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.0810132} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a200fa6813b6a4965eef63dca41d8375"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a200fa6813b6a4965eef63dca41d8375"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"a200fa6813b6a4965eef63dca41d8375","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0","level":"info","message":"auth send jwt","requestID":"83c5b84cfd57dcad4cc68d5d59f78665"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"83c5b84cfd57dcad4cc68d5d59f78665"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.953924,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"83c5b84cfd57dcad4cc68d5d59f78665","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752369,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"798df021-c2e5-4853-a729-c35d20e02bea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.1102848} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78ce16db-e081-41af-9eca-502d96ba77e8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.1149087} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"6f16b8d5-60c8-42a0-9c00-3717fbb4a2be","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.1253972} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f62354b-1608-4f33-8f74-2fc7866246b9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.1255279} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.125372779Z"}]},"request_id":"5e7b5529-f863-4f81-a076-5d5a2c95e540","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.1293843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"83c5b84cfd57dcad4cc68d5d59f78665"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83c5b84cfd57dcad4cc68d5d59f78665"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"83c5b84cfd57dcad4cc68d5d59f78665","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0","level":"info","message":"auth send jwt","requestID":"da25b7cd2d510ac702cac295cbbf4248"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da25b7cd2d510ac702cac295cbbf4248","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"da25b7cd2d510ac702cac295cbbf4248"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159261,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"da25b7cd2d510ac702cac295cbbf4248","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752369,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da25b7cd2d510ac702cac295cbbf4248","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"10ea61aa-9df0-4485-abc4-4b75370c9c9f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.6271143} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da25b7cd2d510ac702cac295cbbf4248","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24c6ef19-22e2-4bc0-892c-66f15ad3f4a4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.6337175} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"da25b7cd2d510ac702cac295cbbf4248","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"6eb8b0e6-bea7-4b4e-ada5-2003434afd8c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752369.6455555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"da25b7cd2d510ac702cac295cbbf4248","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"da25b7cd2d510ac702cac295cbbf4248"} device-1 | {"level":"info","message":"PATCH /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4 200 31ms","method":"PATCH","requestID":"da25b7cd2d510ac702cac295cbbf4248","responseTime":31,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"da25b7cd2d510ac702cac295cbbf4248"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0","level":"info","message":"auth send jwt","requestID":"635b006943ff70a9d86339040ca9fd0f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"635b006943ff70a9d86339040ca9fd0f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"635b006943ff70a9d86339040ca9fd0f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247013,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"635b006943ff70a9d86339040ca9fd0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752369,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM2OX0.L5Ml1CgUSQQwzdTJRaSYWt-6NwBqnaflJn2aSZXC1s0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"635b006943ff70a9d86339040ca9fd0f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"635b006943ff70a9d86339040ca9fd0f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"635b006943ff70a9d86339040ca9fd0f"} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/websocket 200 18ms","method":"POST","requestID":"635b006943ff70a9d86339040ca9fd0f","responseTime":18,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af3ceb5764b56cc3fb62e0502c325978","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"af3ceb5764b56cc3fb62e0502c325978","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/96f187d1-99a5-4a4b-831a-b147433988a3/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":"af3ceb5764b56cc3fb62e0502c325978"} device-1 | {"level":"info","message":"OPTIONS /devices/96f187d1-99a5-4a4b-831a-b147433988a3/websocket 200 1ms","method":"OPTIONS","requestID":"af3ceb5764b56cc3fb62e0502c325978","responseTime":1,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"1c4968ce54cebb5b4bb233578f4a5388"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1c4968ce54cebb5b4bb233578f4a5388","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1c4968ce54cebb5b4bb233578f4a5388"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.36363,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"1c4968ce54cebb5b4bb233578f4a5388","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c4968ce54cebb5b4bb233578f4a5388","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1c4968ce54cebb5b4bb233578f4a5388"} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/websocket 200 18ms","method":"POST","requestID":"1c4968ce54cebb5b4bb233578f4a5388","responseTime":18,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/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":"1c4968ce54cebb5b4bb233578f4a5388"} device-1 | {"level":"info","message":"device 'http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"b14f1e2666888263f2973e8b2ff8e32c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b14f1e2666888263f2973e8b2ff8e32c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b14f1e2666888263f2973e8b2ff8e32c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718149,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b14f1e2666888263f2973e8b2ff8e32c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b14f1e2666888263f2973e8b2ff8e32c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"29deaf88-d2f3-43bf-8026-f846fa54d9fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.1889863} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b14f1e2666888263f2973e8b2ff8e32c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b14f1e2666888263f2973e8b2ff8e32c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b14f1e2666888263f2973e8b2ff8e32c"} device-1 | {"level":"info","message":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? 200 16ms","method":"GET","requestID":"b14f1e2666888263f2973e8b2ff8e32c","responseTime":16,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"8bfac8b37ea94fee8454abd709b29ff3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8bfac8b37ea94fee8454abd709b29ff3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bfac8b37ea94fee8454abd709b29ff3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162534,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8bfac8b37ea94fee8454abd709b29ff3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8bfac8b37ea94fee8454abd709b29ff3","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.125372779Z"}]},"request_id":"9757c8ef-b452-478b-9937-72d7fa3fc915","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.2116294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8bfac8b37ea94fee8454abd709b29ff3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bfac8b37ea94fee8454abd709b29ff3"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8bfac8b37ea94fee8454abd709b29ff3"} device-1 | {"level":"info","message":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? 200 13ms","method":"GET","requestID":"8bfac8b37ea94fee8454abd709b29ff3","responseTime":13,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b84bdbd0861ac33af82a3e27b779c44","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.683577,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2b84bdbd0861ac33af82a3e27b779c44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2b84bdbd0861ac33af82a3e27b779c44","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to run experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to book experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully booked experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"344da470-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"344df290-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144167,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"344da470-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"344da470-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.424469,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"344df290-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"344df290-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"f6713b3f-22d5-4ea8-b227-a5d6859133c6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.2672656} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"344da470-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.125372779Z"}]},"request_id":"6a485437-667c-406f-9cdd-c7031048fdb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.2686071} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"344df290-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"344da470-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? 200 20ms","method":"GET","requestID":"344da470-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"344df290-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? 200 19ms","method":"GET","requestID":"344df290-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Setting up experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully set up experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3458c800-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3458ef10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34593d30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully running experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185118,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3458c800-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3458c800-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.864803,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3458ef10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3458ef10-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60552","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"f1429ee3-0f02-4f91-8295-40c16ad2292d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.34394} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0db8d43c-47fa-432e-8e16-1b16d98dc285","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.344305} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3458c800-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.125372779Z"}]},"request_id":"40d4ccbd-9f77-4d21-a2c2-a32de4c49654","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.344931} authorization-1 | {"client_addr":"127.0.0.1:60552","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.2784,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"34593d30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","rebac_allow":false,"scope_allow":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":"34593d30-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3458ef10-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3458c800-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? 200 25ms","method":"GET","requestID":"3458c800-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34593d30-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F403fe9df-da3e-4349-9b96-9f43751418ab#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F403fe9df-da3e-4349-9b96-9f43751418ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"03fdc0cf-a851-4716-87ca-f6fe329c1dfc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.3541954} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling 200 23ms","method":"POST","requestID":"34593d30-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c22cb2f-449f-4850-9c7a-2f03223bac83","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.3545213} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3458ef10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? 200 25ms","method":"GET","requestID":"3458ef10-4911-11ef-863d-25b977f1d961","responseTime":25,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2b84bdbd0861ac33af82a3e27b779c44","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"345d0dc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"345d82f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f8b4205-1aba-4b22-99fd-36a4d7a4fe4b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.364061} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.466087,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"345d0dc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","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":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"345d0dc0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"2b84bdbd0861ac33af82a3e27b779c44","responseTime":146,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e81785e-feac-4392-b258-98aaf41858db","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.3655262} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.366457,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"345d82f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","rebac_allow":false,"scope_allow":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":"345d82f0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"345d0dc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling 200 14ms","method":"POST","requestID":"345d0dc0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"345d82f0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"137bb63155a35142e03954aae8b73ca5"} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling 200 11ms","method":"POST","requestID":"345d82f0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"137bb63155a35142e03954aae8b73ca5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"137bb63155a35142e03954aae8b73ca5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"345fa5d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.665736,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"137bb63155a35142e03954aae8b73ca5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"137bb63155a35142e03954aae8b73ca5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6c3bd33-1d8e-4000-8f26-4925cd9120e0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.37895} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.5981,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"345fa5d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","rebac_allow":false,"scope_allow":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":"345fa5d0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.075940950Z"}]},"request_id":"c6aa8ab6-355f-4531-b201-f115653ee366","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.3812687} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"137bb63155a35142e03954aae8b73ca5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"345fa5d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling 200 12ms","method":"POST","requestID":"345fa5d0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"137bb63155a35142e03954aae8b73ca5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"137bb63155a35142e03954aae8b73ca5"} device-1 | {"level":"info","message":"GET /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4? 200 15ms","method":"GET","requestID":"137bb63155a35142e03954aae8b73ca5","responseTime":15,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Building connection plan","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} 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":"0dcbf883-29a8-4015-a3ed-c824b12b3902"},{"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":"99304088-7c80-418e-97a6-f817662741fd"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"4d0451f0-3595-4463-bef3-f436c52a9d22"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI","level":"info","message":"auth send jwt","requestID":"0b39f6e46514458ff60acd850774de20"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b39f6e46514458ff60acd850774de20","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.507622,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b39f6e46514458ff60acd850774de20"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3461efc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3461efc0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906562,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0b39f6e46514458ff60acd850774de20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752371,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3MX0.GkL0A6H5ZOcRtMELo8UQkds3CrZh4XpQ-LvZP6fd4KI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b39f6e46514458ff60acd850774de20","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:49.125372779Z"}]},"request_id":"43fded2e-2224-49ec-b2a9-a3c7133169cb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.3995056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b39f6e46514458ff60acd850774de20","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"894666cb-d10f-4221-8ec0-bee53804be30","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.400815} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5522ecfc-0ce4-48b3-a348-119046ac12e8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.4010937} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3461efc0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b39f6e46514458ff60acd850774de20"} gateway-1 | {"time_local":"23/Jul/2024:16:32:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b39f6e46514458ff60acd850774de20"} device-1 | {"level":"info","message":"GET /devices/96f187d1-99a5-4a4b-831a-b147433988a3? 200 12ms","method":"GET","requestID":"0b39f6e46514458ff60acd850774de20","responseTime":12,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a'","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a'","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3461efc0-4911-11ef-863d-25b977f1d961"} 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":"3461efc0-4911-11ef-863d-25b977f1d961","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":"3461efc0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2b84bdbd0861ac33af82a3e27b779c44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"346af070-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5edae2d-6cd7-47d0-9778-14c41a39374f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.4518363} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.502063,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"346af070-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","rebac_allow":false,"scope_allow":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":"346af070-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"346af070-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling 200 9ms","method":"POST","requestID":"346af070-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling"} device-1 | {"device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"346c9e20-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25140f82-2a4c-42e5-b619-b30b86893729","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752371.4627712} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.27438,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"346c9e20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","rebac_allow":false,"scope_allow":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":"346c9e20-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"346c9e20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling 200 8ms","method":"POST","requestID":"346c9e20-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling"} device-1 | {"device":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3169156275444551088 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:tpo2\r\na=ice-pwd:QleaRdH22APeXKeTc2R/azB7\r\na=ice-options:trickle\r\na=fingerprint:sha-256 00:3B:78:F2:2B:E1:1D:EA:FF:8C:C8:B2:D8:88:E5:52:AB:FB:6E:EC:90:82:86:DC:2F:25:F6:4C:20:D4:C3:77\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2452192057 1 udp 2113937151 de68ac3c-ebbb-4f48-922d-e8186357848c.local 39892 typ host generation 0 ufrag tpo2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:16964138 1 udp 1677729535 141.24.211.56 39892 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tpo2 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"96f187d1-99a5-4a4b-831a-b147433988a3","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/f3e7f56a-afd2-42e6-920c-684ceef3b79a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"96f187d1-99a5-4a4b-831a-b147433988a3","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/96f187d1-99a5-4a4b-831a-b147433988a3'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"904d1cb5bc43a1c75309e9db178c119f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"904d1cb5bc43a1c75309e9db178c119f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"}}},"level":"info","message":"received a callback","requestID":"904d1cb5bc43a1c75309e9db178c119f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"904d1cb5bc43a1c75309e9db178c119f","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"904d1cb5bc43a1c75309e9db178c119f"} device-1 | {"data":{"peerconnection":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"96f187d1-99a5-4a4b-831a-b147433988a3","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/f3e7f56a-afd2-42e6-920c-684ceef3b79a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"45fda8e958ebde9e43c9f84272c147c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"45fda8e958ebde9e43c9f84272c147c0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"}}},"level":"info","message":"received a callback","requestID":"45fda8e958ebde9e43c9f84272c147c0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"35aa0020-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3e7f56a-afd2-42e6-920c-684ceef3b79a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fd9aae1-6946-4ca1-8cc3-fef1cb05aa8d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.5436904} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.913325,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35aa0020-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","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":"35aa0020-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"35aa0020-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a 200 10ms","method":"GET","requestID":"35aa0020-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"45fda8e958ebde9e43c9f84272c147c0","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"45fda8e958ebde9e43c9f84272c147c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35aebb10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ef1f2b1-0392-4328-ae0c-4d634626fc71","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.5748637} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.372547,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35aebb10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","rebac_allow":false,"scope_allow":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":"35aebb10-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35aebb10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling 200 10ms","method":"POST","requestID":"35aebb10-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35b08fd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"273502d3-4cc2-494f-87bb-758d2770d45a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.5871994} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.30228,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35b08fd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","rebac_allow":false,"scope_allow":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":"35b08fd0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35b08fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling 200 10ms","method":"POST","requestID":"35b08fd0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE","level":"info","message":"auth send jwt","requestID":"87dff2daf40727734df720b281a6450e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"87dff2daf40727734df720b281a6450e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/403fe9df-da3e-4349-9b96-9f43751418ab","requestID":"87dff2daf40727734df720b281a6450e"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.272517,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"87dff2daf40727734df720b281a6450e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752373,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"87dff2daf40727734df720b281a6450e","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/403fe9df-da3e-4349-9b96-9f43751418ab","requestID":"87dff2daf40727734df720b281a6450e"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/403fe9df-da3e-4349-9b96-9f43751418ab HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87dff2daf40727734df720b281a6450e"} experiment-1 | {"level":"info","message":"GET /experiments/403fe9df-da3e-4349-9b96-9f43751418ab 200 15ms","method":"GET","requestID":"87dff2daf40727734df720b281a6450e","responseTime":15,"status":200,"url":"/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE","level":"info","message":"auth send jwt","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ffd37837b2d4d24964b490cbeeaad4b3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/403fe9df-da3e-4349-9b96-9f43751418ab","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.278644,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ffd37837b2d4d24964b490cbeeaad4b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752373,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffd37837b2d4d24964b490cbeeaad4b3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Attempting to finish experiment","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"35be2460-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.998348,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35be2460-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752373,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35be2460-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a","device":"96f187d1-99a5-4a4b-831a-b147433988a3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/f3e7f56a-afd2-42e6-920c-684ceef3b79a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f3e7f56a-afd2-42e6-920c-684ceef3b79a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3e7f56a-afd2-42e6-920c-684ceef3b79a': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff3e7f56a-afd2-42e6-920c-684ceef3b79a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"e2210b7e-e88c-453b-a4a1-e42c16a5a54b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.6896312} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a8a36e5-b098-40ca-ac02-43fb6a452a24","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.6899798} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53a65ae3129d0cdbeaa32c83f22a72e7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 9ms","method":"POST","requestID":"35be2460-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"53a65ae3129d0cdbeaa32c83f22a72e7","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"195477f3995cd8c5e7e37e0dc9bece5e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"195477f3995cd8c5e7e37e0dc9bece5e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"}}},"level":"info","message":"received a callback","requestID":"53a65ae3129d0cdbeaa32c83f22a72e7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"35be2460-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"}}},"level":"info","message":"received a callback","requestID":"195477f3995cd8c5e7e37e0dc9bece5e"} device-1 | {"level":"info","message":"DELETE /peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a 204 29ms","method":"DELETE","requestID":"35be2460-4911-11ef-863d-25b977f1d961","responseTime":29,"status":204,"url":"/peerconnections/f3e7f56a-afd2-42e6-920c-684ceef3b79a"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"},"level":"info","message":"Successfully finished experiment","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35c6afe0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F96f187d1-99a5-4a4b-831a-b147433988a3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48ac8c47-575c-4f0f-89d9-169ee72f769c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.733069} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.233886,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35c6afe0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/96f187d1-99a5-4a4b-831a-b147433988a3","object_type":"device","rebac_allow":false,"scope_allow":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":"35c6afe0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35c6afe0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F403fe9df-da3e-4349-9b96-9f43751418ab': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F403fe9df-da3e-4349-9b96-9f43751418ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"520b5578-2cdc-4e47-a836-289fa0e4b74e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.739022} device-1 | {"level":"info","message":"POST /devices/96f187d1-99a5-4a4b-831a-b147433988a3/signaling 200 14ms","method":"POST","requestID":"35c6afe0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/96f187d1-99a5-4a4b-831a-b147433988a3/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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da059361-2f9c-45d6-b5d6-582f358ee060","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.7397113} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"ffd37837b2d4d24964b490cbeeaad4b3","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35c947f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd41ccd98-63cc-45e4-ae39-2bae36fcb5b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7ecfe3c-be1a-4223-942a-c341a0be005c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.758027} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.127536,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"35c947f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4","object_type":"device","rebac_allow":false,"scope_allow":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":"35c947f0-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35c947f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling 200 24ms","method":"POST","requestID":"35c947f0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/403fe9df-da3e-4349-9b96-9f43751418ab","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/403fe9df-da3e-4349-9b96-9f43751418ab HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ffd37837b2d4d24964b490cbeeaad4b3"} experiment-1 | {"level":"info","message":"DELETE /experiments/403fe9df-da3e-4349-9b96-9f43751418ab 204 152ms","method":"DELETE","requestID":"ffd37837b2d4d24964b490cbeeaad4b3","responseTime":152,"status":204,"url":"/experiments/403fe9df-da3e-4349-9b96-9f43751418ab"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2799","request_time":"4.137","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0b17381b96dbb94a99dfd9bd26f0efe5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"53a65ae3129d0cdbeaa32c83f22a72e7","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"53a65ae3129d0cdbeaa32c83f22a72e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"195477f3995cd8c5e7e37e0dc9bece5e","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"195477f3995cd8c5e7e37e0dc9bece5e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE","level":"info","message":"auth send jwt","requestID":"524a90326a89e8b40e6a15530b949667"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"524a90326a89e8b40e6a15530b949667","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"524a90326a89e8b40e6a15530b949667"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.662","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"33bbe7b01a822e1ef17e3e2133b8fb77"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.035681,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"524a90326a89e8b40e6a15530b949667","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752373,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","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/d41ccd98-63cc-45e4-ae39-2bae36fcb5b4' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0b7d3779-3c0c-4efb-ad12-dd4b26c0a6e9","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.8384807} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","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/96f187d1-99a5-4a4b-831a-b147433988a3' 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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4fc286d-faa6-4165-a21c-3f4700724dd3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.843738} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"0934c7e8-d52d-4949-8ee2-0922a2f90d0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.854514} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c76eca9-aa59-48d1-8782-b5ee7959f5a5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.854646} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"55f526e1-af8d-4cbc-a7a1-7e9526a6a419","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.8588493} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"524a90326a89e8b40e6a15530b949667"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"524a90326a89e8b40e6a15530b949667"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"524a90326a89e8b40e6a15530b949667","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE","level":"info","message":"auth send jwt","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.713156,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752373,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3M30.eyV6RX671yc-QbDi4aemTZwffd8JAoLj64iNzKeTgUE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1a64d34a-5193-4f7f-b0e8-1fba5b1bb7aa","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.8801942} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64730fc6-8844-4234-aad9-5493815135db","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.884495} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"747382d4-11d5-415c-9a9c-36b6391dfc1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.8990326} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88aa2651-c704-450b-88eb-6a06c6c29faf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.8992803} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"feb91371-7548-4272-8cc7-84623ac5f57d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752373.903003} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"808e63863b0a6a3ccf4f32b7408d5a3f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"e4a906f6433fc6d7a65b837710137c6c"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"e4a906f6433fc6d7a65b837710137c6c","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e4a906f6433fc6d7a65b837710137c6c"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.775423,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e4a906f6433fc6d7a65b837710137c6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e4a906f6433fc6d7a65b837710137c6c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639189,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"46e90c13-3d30-4527-9b61-528c1556b524","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.3938248} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e4a906f6433fc6d7a65b837710137c6c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"6649dfd4-fa89-4477-80df-b17b6c4bc5bc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.3945515} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c37eb8c-a39b-43af-ba2e-60758f124e2b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.398575} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e4a906f6433fc6d7a65b837710137c6c","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fdffe371-0728-45bc-8efe-5edeb8764567","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.3998437} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"29071e6f-2ee7-4296-8c69-3fd3ce286edc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.4023447} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268"} device-1 | {"level":"info","message":"PATCH /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2 200 20ms","method":"PATCH","requestID":"d9f39f1ed812b9d4b1abc3b0f3501268","responseTime":20,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"e26c4a536c948622638ec7a249f4ee4f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e26c4a536c948622638ec7a249f4ee4f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e26c4a536c948622638ec7a249f4ee4f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161206,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e26c4a536c948622638ec7a249f4ee4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e26c4a536c948622638ec7a249f4ee4f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"7d24398f-6771-48e9-bde8-068dc2c852b8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.415866} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e4a906f6433fc6d7a65b837710137c6c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e4a906f6433fc6d7a65b837710137c6c"} device-1 | {"level":"info","message":"PATCH /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4 200 35ms","method":"PATCH","requestID":"e4a906f6433fc6d7a65b837710137c6c","responseTime":35,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e4a906f6433fc6d7a65b837710137c6c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"4fa56f15cc7e123da962ee8611adce96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4fa56f15cc7e123da962ee8611adce96","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4fa56f15cc7e123da962ee8611adce96"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697774,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e26c4a536c948622638ec7a249f4ee4f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4fa56f15cc7e123da962ee8611adce96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e26c4a536c948622638ec7a249f4ee4f"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/websocket 200 19ms","method":"POST","requestID":"e26c4a536c948622638ec7a249f4ee4f","responseTime":19,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4fa56f15cc7e123da962ee8611adce96","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4fa56f15cc7e123da962ee8611adce96"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4fa56f15cc7e123da962ee8611adce96"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/websocket 200 15ms","method":"POST","requestID":"4fa56f15cc7e123da962ee8611adce96","responseTime":15,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"8d5ab9be57827a75493f2b4719f6a1c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8d5ab9be57827a75493f2b4719f6a1c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d5ab9be57827a75493f2b4719f6a1c4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612938,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8d5ab9be57827a75493f2b4719f6a1c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8d5ab9be57827a75493f2b4719f6a1c4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"f0e87902-f663-4446-afb3-120e607dcb9a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.4708836} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8d5ab9be57827a75493f2b4719f6a1c4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d5ab9be57827a75493f2b4719f6a1c4"} device-1 | {"level":"info","message":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? 200 10ms","method":"GET","requestID":"8d5ab9be57827a75493f2b4719f6a1c4","responseTime":10,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8d5ab9be57827a75493f2b4719f6a1c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"a76578bb3f52457b3cf377942926717c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a76578bb3f52457b3cf377942926717c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a76578bb3f52457b3cf377942926717c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065173,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a76578bb3f52457b3cf377942926717c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a76578bb3f52457b3cf377942926717c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"5da5993b-5c32-4924-9bec-09586d330a2a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.485951} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a76578bb3f52457b3cf377942926717c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a76578bb3f52457b3cf377942926717c"} device-1 | {"level":"info","message":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? 200 11ms","method":"GET","requestID":"a76578bb3f52457b3cf377942926717c","responseTime":11,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a76578bb3f52457b3cf377942926717c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.641912,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"516b7e1b0c92c6bf3c47d2b540e6c662","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to run experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to book experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully booked experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"364296a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3642e4c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280073,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364296a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"364296a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.322964,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3642e4c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3642e4c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"b0fa2653-98b1-4493-a73b-17d49e117570","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.5498312} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"364296a0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"87e07c44-1dad-48da-a2dc-f36ebd4259cc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.5510776} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3642e4c0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"364296a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? 200 20ms","method":"GET","requestID":"364296a0-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3642e4c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? 200 19ms","method":"GET","requestID":"3642e4c0-4911-11ef-863d-25b977f1d961","responseTime":19,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Setting up experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully set up experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"364c5aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"364ca8c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"364ccfd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971692,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully running experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364c5aa0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"364c5aa0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879821,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364ca8c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"364ca8c0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.797681,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11949d1e-b89c-4f3a-b459-4143c85c10ec","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6108897} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"15fd1fb7-434e-4123-818d-1d4753944ece","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6120422} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364ccfd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","rebac_allow":false,"scope_allow":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":"364ccfd0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"8ea51b06-5fab-4721-94b5-869ec2c6eaa4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6129858} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"364c5aa0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"364ca8c0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"364ccfd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling 200 13ms","method":"POST","requestID":"364ccfd0-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"364c5aa0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? 200 17ms","method":"GET","requestID":"364c5aa0-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"364ca8c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? 200 16ms","method":"GET","requestID":"364ca8c0-4911-11ef-863d-25b977f1d961","responseTime":16,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"364f40d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"364fb600-4911-11ef-863d-25b977f1d961"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e48f870-a5b4-4e03-b969-3bb5aab3dec5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.626321} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F37516038-200d-4396-839b-9fdd9bf96d2c#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F37516038-200d-4396-839b-9fdd9bf96d2c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"eb156f8d-9a75-4d4e-ba68-48192c34c31b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6276152} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9328f54a-02a4-458e-875a-3f180937f98c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6278503} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.129777,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364f40d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","rebac_allow":false,"scope_allow":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":"364f40d0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ab257e1-dd2d-4e02-8d4d-0eccf6e6b5d7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6303842} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396553,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"364fb600-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","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":"364f40d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"364fb600-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling 200 11ms","method":"POST","requestID":"364f40d0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"364fb600-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling 200 11ms","method":"POST","requestID":"364fb600-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3651d8e0-4911-11ef-863d-25b977f1d961"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662","responseTime":143,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"bb7009fa62d9ca4108a63a99ffb08d71"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85940d06-a684-40ea-bc00-8a3e5856cf57","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.644347} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bb7009fa62d9ca4108a63a99ffb08d71","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb7009fa62d9ca4108a63a99ffb08d71"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.598564,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3651d8e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","rebac_allow":false,"scope_allow":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":"3651d8e0-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764646,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3651d8e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling 200 11ms","method":"POST","requestID":"3651d8e0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"bb7009fa62d9ca4108a63a99ffb08d71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb7009fa62d9ca4108a63a99ffb08d71","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Building connection plan","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} 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":"2fe79b3e-87de-412f-a1d3-3652dee90688"},{"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":"08acc12c-5ae0-4d59-ba97-625a1240837e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"fc9ced9b-cb5c-4e86-b714-3fae681ec8bd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.854484941Z"}]},"request_id":"d5d76cff-3965-40f2-8958-99d6a22aad0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6537898} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb7009fa62d9ca4108a63a99ffb08d71","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.633649,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3653fbc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb7009fa62d9ca4108a63a99ffb08d71"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb7009fa62d9ca4108a63a99ffb08d71"} device-1 | {"level":"info","message":"GET /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4? 200 13ms","method":"GET","requestID":"bb7009fa62d9ca4108a63a99ffb08d71","responseTime":13,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I","level":"info","message":"auth send jwt","requestID":"f300be5b24d93e4f5a6ff70f9706fab5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f300be5b24d93e4f5a6ff70f9706fab5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f300be5b24d93e4f5a6ff70f9706fab5"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"b78f15eb-509b-407e-bd6f-28315ca10682","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6634135} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79a2e774-dcf8-4a80-b088-30d97c8bc39e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.663652} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621639,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f300be5b24d93e4f5a6ff70f9706fab5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752374,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3NH0.sWjWv370OwCNBA26lYMxBcgQ_Jel9p90MtVhnUzR51I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f300be5b24d93e4f5a6ff70f9706fab5","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:53.898999150Z"}]},"request_id":"d7472a6c-934a-473e-bffe-4114c67808fe","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.6701524} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f300be5b24d93e4f5a6ff70f9706fab5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15'","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15'","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} 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":"3653fbc0-4911-11ef-863d-25b977f1d961","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":"getDevicesByDeviceId succeeded","requestID":"f300be5b24d93e4f5a6ff70f9706fab5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f300be5b24d93e4f5a6ff70f9706fab5"} device-1 | {"level":"info","message":"GET /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2? 200 14ms","method":"GET","requestID":"f300be5b24d93e4f5a6ff70f9706fab5","responseTime":14,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"3653fbc0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"516b7e1b0c92c6bf3c47d2b540e6c662"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"365b00a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c2992b8-3166-47e2-b9f9-bc1d1e5a0b96","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.7027314} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.63055,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"365b00a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","rebac_allow":false,"scope_allow":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":"365b00a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"365b00a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling 200 9ms","method":"POST","requestID":"365b00a0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"365c8740-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd2c83c8-aa63-4172-9250-766b115f5651","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752374.7130673} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.629178,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"365c8740-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","rebac_allow":false,"scope_allow":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":"365c8740-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"365c8740-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling 200 8ms","method":"POST","requestID":"365c8740-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling"} device-1 | {"device":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/f976e255-8e16-4571-95f7-364af50bfd15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28ede2e33651f65346f4bc9136663599","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"28ede2e33651f65346f4bc9136663599","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"}}},"level":"info","message":"received a callback","requestID":"28ede2e33651f65346f4bc9136663599"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"28ede2e33651f65346f4bc9136663599","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"28ede2e33651f65346f4bc9136663599"} device-1 | {"device":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"f976e255-8e16-4571-95f7-364af50bfd15","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/f976e255-8e16-4571-95f7-364af50bfd15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"856fd2b7aa836ceed3a84261e86cea29","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"856fd2b7aa836ceed3a84261e86cea29","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"}}},"level":"info","message":"received a callback","requestID":"856fd2b7aa836ceed3a84261e86cea29"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"379aac90-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff976e255-8e16-4571-95f7-364af50bfd15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4270d29-b531-4c42-b7e3-90aedf2e4ed1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752376.7986379} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.717274,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"379aac90-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15","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":"379aac90-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"379aac90-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/f976e255-8e16-4571-95f7-364af50bfd15 200 10ms","method":"GET","requestID":"379aac90-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"856fd2b7aa836ceed3a84261e86cea29","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"856fd2b7aa836ceed3a84261e86cea29"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"379f1960-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef3f3396-a33c-4303-9203-4e9e80614a3b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752376.8274384} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.6732,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"379f1960-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","rebac_allow":false,"scope_allow":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":"379f1960-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"379f1960-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling 200 10ms","method":"POST","requestID":"379f1960-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37a11530-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90f0fe1b-31dc-48e5-849c-ed5a57470edd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752376.8403816} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.422804,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37a11530-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","rebac_allow":false,"scope_allow":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":"37a11530-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37a11530-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling 200 11ms","method":"POST","requestID":"37a11530-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3Nn0.rYJ7bpCX2xn44VyweS6r2Ig2lb_2CyPpLrTZeFBNAhw","level":"info","message":"auth send jwt","requestID":"c1f56a60154d47250b33715b53d45ddc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c1f56a60154d47250b33715b53d45ddc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/37516038-200d-4396-839b-9fdd9bf96d2c","requestID":"c1f56a60154d47250b33715b53d45ddc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.200431,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"c1f56a60154d47250b33715b53d45ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752376,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3Nn0.rYJ7bpCX2xn44VyweS6r2Ig2lb_2CyPpLrTZeFBNAhw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1f56a60154d47250b33715b53d45ddc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/37516038-200d-4396-839b-9fdd9bf96d2c","requestID":"c1f56a60154d47250b33715b53d45ddc"} gateway-1 | {"time_local":"23/Jul/2024:16:32:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/37516038-200d-4396-839b-9fdd9bf96d2c HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1f56a60154d47250b33715b53d45ddc"} experiment-1 | {"level":"info","message":"GET /experiments/37516038-200d-4396-839b-9fdd9bf96d2c 200 15ms","method":"GET","requestID":"c1f56a60154d47250b33715b53d45ddc","responseTime":15,"status":200,"url":"/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3Nn0.rYJ7bpCX2xn44VyweS6r2Ig2lb_2CyPpLrTZeFBNAhw","level":"info","message":"auth send jwt","requestID":"6d63653bb733c2839f6b07d25d57fde5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d63653bb733c2839f6b07d25d57fde5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/37516038-200d-4396-839b-9fdd9bf96d2c","requestID":"6d63653bb733c2839f6b07d25d57fde5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.179576,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6d63653bb733c2839f6b07d25d57fde5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752376,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3Nn0.rYJ7bpCX2xn44VyweS6r2Ig2lb_2CyPpLrTZeFBNAhw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d63653bb733c2839f6b07d25d57fde5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Attempting to finish experiment","requestID":"6d63653bb733c2839f6b07d25d57fde5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"37ae0d80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.26579,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37ae0d80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752376,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3Nn0.rYJ7bpCX2xn44VyweS6r2Ig2lb_2CyPpLrTZeFBNAhw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"37ae0d80-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"e8b14b7e-efe0-4e56-8933-1033614a5ca2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"cb5c769f-fd36-4481-afed-47aa82a1aff4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/f976e255-8e16-4571-95f7-364af50bfd15' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6df4db3e3f86f619bf4fad96d8789173","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6df4db3e3f86f619bf4fad96d8789173","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff976e255-8e16-4571-95f7-364af50bfd15': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff976e255-8e16-4571-95f7-364af50bfd15","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"8a32e31b-bed1-46a0-87fb-e2cfbc704270","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752376.9488738} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81fd3cba5dd9a6b089d9ec73f1c4fd53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"}}},"level":"info","message":"received a callback","requestID":"6df4db3e3f86f619bf4fad96d8789173"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"81fd3cba5dd9a6b089d9ec73f1c4fd53","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"791d7e1b-702d-4ae0-bd24-45cd6a01568e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752376.9494703} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"}}},"level":"info","message":"received a callback","requestID":"81fd3cba5dd9a6b089d9ec73f1c4fd53"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"37ae0d80-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"f976e255-8e16-4571-95f7-364af50bfd15","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"37ae0d80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/f976e255-8e16-4571-95f7-364af50bfd15 204 49ms","method":"DELETE","requestID":"37ae0d80-4911-11ef-863d-25b977f1d961","responseTime":49,"status":204,"url":"/peerconnections/f976e255-8e16-4571-95f7-364af50bfd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"},"level":"info","message":"Successfully finished experiment","requestID":"6d63653bb733c2839f6b07d25d57fde5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37b93110-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:56Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8b14b7e-efe0-4e56-8933-1033614a5ca2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"479f7775-aa0f-489c-9420-c7d23295fd33","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.000741} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.445349,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37b93110-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2","object_type":"device","rebac_allow":false,"scope_allow":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":"37b93110-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37b93110-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling 200 15ms","method":"POST","requestID":"37b93110-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/e8b14b7e-efe0-4e56-8933-1033614a5ca2/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F37516038-200d-4396-839b-9fdd9bf96d2c': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F37516038-200d-4396-839b-9fdd9bf96d2c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"6119f109-1754-434f-ba26-6540aad94ec0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.010624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb19716d-7e9c-4d06-8182-242da59faa61","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.0110548} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"37bc3e50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6d63653bb733c2839f6b07d25d57fde5","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb5c769f-fd36-4481-afed-47aa82a1aff4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cc21d77-7dac-448a-a509-45d290f80c16","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.020026} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.813886,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"37bc3e50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4","object_type":"device","rebac_allow":false,"scope_allow":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":"37bc3e50-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"37bc3e50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling 200 14ms","method":"POST","requestID":"37bc3e50-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/cb5c769f-fd36-4481-afed-47aa82a1aff4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/37516038-200d-4396-839b-9fdd9bf96d2c","requestID":"6d63653bb733c2839f6b07d25d57fde5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/37516038-200d-4396-839b-9fdd9bf96d2c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d63653bb733c2839f6b07d25d57fde5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.654","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1b8da9ecefb258aa853feb22608a597f"} experiment-1 | {"level":"info","message":"DELETE /experiments/37516038-200d-4396-839b-9fdd9bf96d2c 204 180ms","method":"DELETE","requestID":"6d63653bb733c2839f6b07d25d57fde5","responseTime":180,"status":204,"url":"/experiments/37516038-200d-4396-839b-9fdd9bf96d2c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.644","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"28fbb985a05ee4360d6fef57028af08d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"6df4db3e3f86f619bf4fad96d8789173","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"6df4db3e3f86f619bf4fad96d8789173"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"81fd3cba5dd9a6b089d9ec73f1c4fd53","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:32: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.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"81fd3cba5dd9a6b089d9ec73f1c4fd53"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"22d867075bdde43e26c1b2f8f7f4363c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"22d867075bdde43e26c1b2f8f7f4363c","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/cb5c769f-fd36-4481-afed-47aa82a1aff4' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"22d867075bdde43e26c1b2f8f7f4363c"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.156634,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"22d867075bdde43e26c1b2f8f7f4363c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","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/e8b14b7e-efe0-4e56-8933-1033614a5ca2' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"70cae563-2c9d-417a-a288-1e7bc3d6bc2b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.116597} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a0df85d-6c34-4c6f-8ef0-f1ca7002ab0e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.122641} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"e1fe6b9c-4f23-4f42-8681-fd8ae82a3cb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1339562} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4c0119b-6988-4c18-886e-73f013de7e67","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1342666} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"d2d6fbca-4d1a-4141-8229-c315aa7d6a89","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.139623} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"22d867075bdde43e26c1b2f8f7f4363c"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"22d867075bdde43e26c1b2f8f7f4363c"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"22d867075bdde43e26c1b2f8f7f4363c","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"001215523f4831247726034675a55c9d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"001215523f4831247726034675a55c9d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"001215523f4831247726034675a55c9d"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.628495,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"001215523f4831247726034675a55c9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f90c43c7-487f-41d1-845b-eb2e77e4253e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1721787} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6c2fb20-5fb1-4dd8-bc3a-e205b9552586","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1779733} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"4a5ac046-4e06-4438-9566-4989a9478b1b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1899574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65e3de8b-ce6a-4e59-95b8-4b806920d05e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1902058} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"605c5ed0-0319-49b7-88ee-b31a6282b40f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.1948907} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"001215523f4831247726034675a55c9d"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"001215523f4831247726034675a55c9d","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"001215523f4831247726034675a55c9d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"15dadf36998ab49250f60fd9e988212f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"15dadf36998ab49250f60fd9e988212f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"15dadf36998ab49250f60fd9e988212f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703846,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.594296,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"15dadf36998ab49250f60fd9e988212f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"15dadf36998ab49250f60fd9e988212f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"71bd4cc0-4cd7-49b8-ac60-9c5d1199125d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.6825428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"ea038f3b-2c53-4563-b377-ae34e1a8d20c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.6831877} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"15dadf36998ab49250f60fd9e988212f","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"365696fb-05c7-49cd-803c-bd26e63c4eb5","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.6864884} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","responseTime":2,"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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ab3ec6f-dfba-423c-9509-f1bc2f5541a1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.6874726} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"15dadf36998ab49250f60fd9e988212f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"391ce2ee-05cc-4697-98b7-233793b6fa20","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.6917167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15dadf36998ab49250f60fd9e988212f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"15dadf36998ab49250f60fd9e988212f"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/313a4519-7581-490f-b8d0-7a178d475123 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"15dadf36998ab49250f60fd9e988212f"} device-1 | {"level":"info","message":"PATCH /devices/313a4519-7581-490f-b8d0-7a178d475123 200 20ms","method":"PATCH","requestID":"15dadf36998ab49250f60fd9e988212f","responseTime":20,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"5aaaf563ae956b182dbc5c95899291cd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5aaaf563ae956b182dbc5c95899291cd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5aaaf563ae956b182dbc5c95899291cd"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"74255347-c6ed-4e5a-ae9a-254029963c2d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.7027917} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677256,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"5aaaf563ae956b182dbc5c95899291cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5aaaf563ae956b182dbc5c95899291cd","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51"} device-1 | {"level":"info","message":"PATCH /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d 200 34ms","method":"PATCH","requestID":"4d0b41d88e3ad1006c43e42bd2a11d51","responseTime":34,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"0a4dac885e9d238e74ad7be85dda5292"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0a4dac885e9d238e74ad7be85dda5292","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0a4dac885e9d238e74ad7be85dda5292"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101495,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0a4dac885e9d238e74ad7be85dda5292","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a4dac885e9d238e74ad7be85dda5292","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5aaaf563ae956b182dbc5c95899291cd"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/websocket 200 16ms","method":"POST","requestID":"5aaaf563ae956b182dbc5c95899291cd","responseTime":16,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5aaaf563ae956b182dbc5c95899291cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0a4dac885e9d238e74ad7be85dda5292"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0a4dac885e9d238e74ad7be85dda5292"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/websocket 200 14ms","method":"POST","requestID":"0a4dac885e9d238e74ad7be85dda5292","responseTime":14,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658286,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"0b30df26-a3de-4697-9d48-d351f9978005","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.7607045} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93"} device-1 | {"level":"info","message":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? 200 11ms","method":"GET","requestID":"f6719fc3e3e58aedc75eaf96ee7ecd93","responseTime":11,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"42669f64fc31bdd572865b82fe0af887"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"42669f64fc31bdd572865b82fe0af887","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42669f64fc31bdd572865b82fe0af887"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936835,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"42669f64fc31bdd572865b82fe0af887","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"42669f64fc31bdd572865b82fe0af887","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"392e99b3-8cfb-4a98-be71-6437ecadcc0b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.7760186} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"42669f64fc31bdd572865b82fe0af887","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42669f64fc31bdd572865b82fe0af887"} device-1 | {"level":"info","message":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? 200 11ms","method":"GET","requestID":"42669f64fc31bdd572865b82fe0af887","responseTime":11,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42669f64fc31bdd572865b82fe0af887"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"9419f700bd49c894e2db640374df1db5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9419f700bd49c894e2db640374df1db5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9419f700bd49c894e2db640374df1db5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.701129,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"9419f700bd49c894e2db640374df1db5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9419f700bd49c894e2db640374df1db5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to run experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to book experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully booked experiment","requestID":"9419f700bd49c894e2db640374df1db5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3837fe00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"38382510-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615141,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3837fe00-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3837fe00-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.516379,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"38382510-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"38382510-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"4c8f64dc-e3d6-4d57-a43e-7374a1a37a3b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.8314705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3837fe00-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"7d1f227e-fc6b-4f5c-8f5d-0b07f6c87673","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.8322775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"38382510-4911-11ef-863d-25b977f1d961","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3837fe00-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? 200 13ms","method":"GET","requestID":"3837fe00-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"38382510-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? 200 13ms","method":"GET","requestID":"38382510-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Setting up experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully set up experiment","requestID":"9419f700bd49c894e2db640374df1db5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3840d7a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"384125c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"384173e0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully running experiment","requestID":"9419f700bd49c894e2db640374df1db5"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678257,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3840d7a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3840d7a0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703558,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"384125c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"384125c0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712983,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b66c928d-f9e7-4b4d-951a-c381cfd1a367","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.8920107} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"384173e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","rebac_allow":false,"scope_allow":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":"384173e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"61e20084-7dd9-44a8-8f5d-ac2f1ca5f510","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.893909} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3840d7a0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"384173e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling 200 11ms","method":"POST","requestID":"384173e0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"95349e6b-b263-49e8-ae56-6821a26c59f8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.8965747} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"384396c0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"384125c0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3840d7a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? 200 20ms","method":"GET","requestID":"3840d7a0-4911-11ef-863d-25b977f1d961","responseTime":20,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"384125c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? 200 21ms","method":"GET","requestID":"384125c0-4911-11ef-863d-25b977f1d961","responseTime":21,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123?"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47098e56-2d38-45fd-864f-a554b122f409","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9054768} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.956273,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3844a830-4911-11ef-863d-25b977f1d961"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"384396c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","rebac_allow":false,"scope_allow":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":"384396c0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F09926ecd-7d60-4535-8606-6b2ac509b1a0#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F09926ecd-7d60-4535-8606-6b2ac509b1a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"5c9f43e8-011f-4c5b-97f0-0ffba4b60617","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.907381} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a009eaf-917a-471b-beca-fbc961ee5cea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9088924} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"384396c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/signaling 200 11ms","method":"POST","requestID":"384396c0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"9419f700bd49c894e2db640374df1db5","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f48b61be-6e05-4eff-8b6c-dce9c4731082","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9134943} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.656854,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3844a830-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","rebac_allow":false,"scope_allow":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":"3844a830-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3844a830-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling 200 10ms","method":"POST","requestID":"3844a830-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9419f700bd49c894e2db640374df1db5"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 134ms","method":"POST","requestID":"9419f700bd49c894e2db640374df1db5","responseTime":134,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3846a400-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76c81f1a-9bdc-49eb-ba5d-0ed5035f6cc6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9253933} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.127792,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3846a400-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","rebac_allow":false,"scope_allow":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":"3846a400-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60524","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717002,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"14bc4602ee6554bff5f78ba1b9b06a0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3846a400-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/signaling 200 10ms","method":"POST","requestID":"3846a400-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.133923336Z"}]},"request_id":"3be13fbf-1a5a-4492-bf67-e681fd530713","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9305627} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Building connection plan","requestID":"9419f700bd49c894e2db640374df1db5"} 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":"412bfae6-c771-42e8-abe4-44772f17a81e"},{"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":"208c2de9-e49e-4989-8556-7d2230149734"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"e1debf58-e951-4268-b117-f9bfdd245a3a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9419f700bd49c894e2db640374df1db5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9419f700bd49c894e2db640374df1db5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a"} device-1 | {"level":"info","message":"GET /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d? 200 11ms","method":"GET","requestID":"14bc4602ee6554bff5f78ba1b9b06a0a","responseTime":11,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.716237,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"38489fd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"38489fd0-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0","level":"info","message":"auth send jwt","requestID":"0124358a5665f3ecf5a9932b9884e916"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0124358a5665f3ecf5a9932b9884e916","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0124358a5665f3ecf5a9932b9884e916"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781741,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"0124358a5665f3ecf5a9932b9884e916","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752377,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM3N30.-4arBB8MXS6jLmdox-QuGCd-WO4yjpqOuE4leXEz8K0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0124358a5665f3ecf5a9932b9884e916","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"d42aa5b1-34fe-4536-b371-bae03eec8e21","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9443557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e5c02fa-b44c-4417-bb51-5fbb157d8fb8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.944571} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"38489fd0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:32:57.189922111Z"}]},"request_id":"2594e550-cb23-443f-be51-f932a3e023ee","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9491796} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0124358a5665f3ecf5a9932b9884e916","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044'","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044'","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} 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":"38489fd0-4911-11ef-863d-25b977f1d961","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":"getDevicesByDeviceId succeeded","requestID":"0124358a5665f3ecf5a9932b9884e916"} device-1 | {"level":"info","message":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? 200 19ms","method":"GET","requestID":"0124358a5665f3ecf5a9932b9884e916","responseTime":19,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123?"} gateway-1 | {"time_local":"23/Jul/2024:16:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/313a4519-7581-490f-b8d0-7a178d475123? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0124358a5665f3ecf5a9932b9884e916"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"38489fd0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9419f700bd49c894e2db640374df1db5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"384ff2d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc3a1257-6d0b-4d3f-8785-ca937ca87d7b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9850583} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.253807,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"384ff2d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","rebac_allow":false,"scope_allow":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":"384ff2d0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"384ff2d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling 200 7ms","method":"POST","requestID":"384ff2d0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38515260-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0007c6b-55f4-4e3b-b11c-a0819161348d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752377.9947138} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.464059,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"38515260-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","rebac_allow":false,"scope_allow":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":"38515260-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38515260-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/signaling 200 8ms","method":"POST","requestID":"38515260-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/signaling"} device-1 | {"device":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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/aa43969e-1473-4ff1-ac88-002602324044' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3383509ffc6ad08bd19d9a2fcb5bb4cb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3383509ffc6ad08bd19d9a2fcb5bb4cb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"}}},"level":"info","message":"received a callback","requestID":"3383509ffc6ad08bd19d9a2fcb5bb4cb"} device-1 | {"device":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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 6ms","method":"POST","requestID":"3383509ffc6ad08bd19d9a2fcb5bb4cb","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"3383509ffc6ad08bd19d9a2fcb5bb4cb"} device-1 | {"data":{"peerconnection":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"aa43969e-1473-4ff1-ac88-002602324044","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/aa43969e-1473-4ff1-ac88-002602324044' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86f91522fe8748a8269c17d10dcd3e62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"86f91522fe8748a8269c17d10dcd3e62","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"}}},"level":"info","message":"received a callback","requestID":"86f91522fe8748a8269c17d10dcd3e62"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"398f9ec0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faa43969e-1473-4ff1-ac88-002602324044","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11e2d7d7-5f08-458b-878e-840c552066a3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.0828526} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.34281,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"398f9ec0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044","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":"398f9ec0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"398f9ec0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/aa43969e-1473-4ff1-ac88-002602324044 200 11ms","method":"GET","requestID":"398f9ec0-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"86f91522fe8748a8269c17d10dcd3e62","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"86f91522fe8748a8269c17d10dcd3e62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3993bd70-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09727062-6909-4e31-8538-734fa1444958","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.1098957} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.365922,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3993bd70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","rebac_allow":false,"scope_allow":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":"3993bd70-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3993bd70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/signaling 200 11ms","method":"POST","requestID":"3993bd70-4911-11ef-863d-25b977f1d961","responseTime":11,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3995e050-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77eda3a4-4ba6-4ee3-8432-49bfca860288","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.1228237} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.078613,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3995e050-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","rebac_allow":false,"scope_allow":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":"3995e050-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3995e050-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling 200 12ms","method":"POST","requestID":"3995e050-4911-11ef-863d-25b977f1d961","responseTime":12,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc","level":"info","message":"auth send jwt","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.482969,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a830bc91e7ecb51ae9f95c9cf9803f19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752380,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19"} experiment-1 | {"level":"info","message":"GET /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0 200 17ms","method":"GET","requestID":"a830bc91e7ecb51ae9f95c9cf9803f19","responseTime":17,"status":200,"url":"/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc","level":"info","message":"auth send jwt","requestID":"fd92cdd266181e965a9f0f1db794f033"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fd92cdd266181e965a9f0f1db794f033","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","requestID":"fd92cdd266181e965a9f0f1db794f033"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.419391,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"fd92cdd266181e965a9f0f1db794f033","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752380,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd92cdd266181e965a9f0f1db794f033","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Attempting to finish experiment","requestID":"fd92cdd266181e965a9f0f1db794f033"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"39a3ea10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.248028,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"39a3ea10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752380,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"39a3ea10-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"313a4519-7581-490f-b8d0-7a178d475123","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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":"c8d3908f-4447-4a2e-8dee-ce216b25dc8d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"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/aa43969e-1473-4ff1-ac88-002602324044' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faa43969e-1473-4ff1-ac88-002602324044': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faa43969e-1473-4ff1-ac88-002602324044","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"7ee62130-71cc-4d4a-b0f2-5fc06da57d10","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.2347963} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1742ed76d48e6bbc5a88d2b61b22afa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b1742ed76d48e6bbc5a88d2b61b22afa","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d779eec-bd37-44aa-ae40-37f0c44d8550","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.2354023} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"832a9298a5b39081de4996d26718a858","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 14ms","method":"POST","requestID":"39a3ea10-4911-11ef-863d-25b977f1d961","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"}}},"level":"info","message":"received a callback","requestID":"b1742ed76d48e6bbc5a88d2b61b22afa"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"832a9298a5b39081de4996d26718a858","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"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"}}},"level":"info","message":"received a callback","requestID":"832a9298a5b39081de4996d26718a858"} device-1 | {"data":{"peerconnection":"aa43969e-1473-4ff1-ac88-002602324044","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"39a3ea10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/aa43969e-1473-4ff1-ac88-002602324044 204 52ms","method":"DELETE","requestID":"39a3ea10-4911-11ef-863d-25b977f1d961","responseTime":52,"status":204,"url":"/peerconnections/aa43969e-1473-4ff1-ac88-002602324044"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"},"level":"info","message":"Successfully finished experiment","requestID":"fd92cdd266181e965a9f0f1db794f033"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"39aee690-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F313a4519-7581-490f-b8d0-7a178d475123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"048845c8-37df-4070-8881-e0861147f031","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.2893405} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.029281,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"39aee690-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/313a4519-7581-490f-b8d0-7a178d475123","object_type":"device","rebac_allow":false,"scope_allow":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":"39aee690-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"39aee690-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/313a4519-7581-490f-b8d0-7a178d475123/signaling 200 15ms","method":"POST","requestID":"39aee690-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/313a4519-7581-490f-b8d0-7a178d475123/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F09926ecd-7d60-4535-8606-6b2ac509b1a0': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F09926ecd-7d60-4535-8606-6b2ac509b1a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"15727f70-5a4e-4412-b240-70a1e111b2a8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.2968144} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"39b1ccc0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"495560a4-e088-4113-8ffc-0284e9174aa6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.2977803} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"fd92cdd266181e965a9f0f1db794f033","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8d3908f-4447-4a2e-8dee-ce216b25dc8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"467c260d-44ba-493e-b768-528ce2d3d516","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.30768} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.066484,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"39b1ccc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d","object_type":"device","rebac_allow":false,"scope_allow":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":"39b1ccc0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"39b1ccc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling 200 14ms","method":"POST","requestID":"39b1ccc0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0","requestID":"fd92cdd266181e965a9f0f1db794f033"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0 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":"fd92cdd266181e965a9f0f1db794f033"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.654","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"669470d9c964fafdb5fad6af5cb778ef"} experiment-1 | {"level":"info","message":"DELETE /experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0 204 178ms","method":"DELETE","requestID":"fd92cdd266181e965a9f0f1db794f033","responseTime":178,"status":204,"url":"/experiments/09926ecd-7d60-4535-8606-6b2ac509b1a0"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.646","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d4d7bf13c63ac4e594aa10c31ccefc7a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"b1742ed76d48e6bbc5a88d2b61b22afa","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1742ed76d48e6bbc5a88d2b61b22afa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc","level":"info","message":"auth send jwt","requestID":"e51eda243b551f5367f734d21c5ea2a0"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c8d3908f-4447-4a2e-8dee-ce216b25dc8d' closed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e51eda243b551f5367f734d21c5ea2a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e51eda243b551f5367f734d21c5ea2a0"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"832a9298a5b39081de4996d26718a858","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"832a9298a5b39081de4996d26718a858"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.192866,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"e51eda243b551f5367f734d21c5ea2a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752380,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","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/313a4519-7581-490f-b8d0-7a178d475123' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"541053e1-d5c8-4e0f-8a25-cd8c521575d8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4000106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3188a6d8-ce84-4531-9171-11a96dc89a7d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4058058} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"891588bc-4fb4-4f96-8782-25dcae269b2c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4168386} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66ae05d9-6ee9-4000-b854-c2f360dad2ac","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4171197} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.416799457Z"}]},"request_id":"19b6e9f3-8f02-4776-a7df-55aa5a8320b8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4218678} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e51eda243b551f5367f734d21c5ea2a0"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"e51eda243b551f5367f734d21c5ea2a0","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e51eda243b551f5367f734d21c5ea2a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc","level":"info","message":"auth send jwt","requestID":"6862478f3818f262c238df9ac3f9cdbd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6862478f3818f262c238df9ac3f9cdbd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6862478f3818f262c238df9ac3f9cdbd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.713276,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6862478f3818f262c238df9ac3f9cdbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752380,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4MH0.k9Ah1ITFS2g18fqx4LhQnWxkHGUMIhKDW4HYR_68kdc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2fbe8868-8c5c-4a31-a29d-297c5eb7f46a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4517262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e54fb799-9793-4048-bb72-afa4f1cb2754","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4569306} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"888bb893-dc50-430d-9420-bac84fd9a8ea","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4685893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"352c620f-09a7-45d7-89fd-ad31a49d445f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.468572} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.468551909Z"}]},"request_id":"d7167a40-3993-4d16-882e-d1e87e12170d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752380.4731314} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6862478f3818f262c238df9ac3f9cdbd"} gateway-1 | {"time_local":"23/Jul/2024:16:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6862478f3818f262c238df9ac3f9cdbd"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"6862478f3818f262c238df9ac3f9cdbd","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"762e5dd1079cd3eb14ea40d85ba97d42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"762e5dd1079cd3eb14ea40d85ba97d42","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/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":"762e5dd1079cd3eb14ea40d85ba97d42"} device-1 | {"level":"info","message":"OPTIONS /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/websocket 200 1ms","method":"OPTIONS","requestID":"762e5dd1079cd3eb14ea40d85ba97d42","responseTime":1,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"488304c79a970eb09ba96f884cfe6de7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"488304c79a970eb09ba96f884cfe6de7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"488304c79a970eb09ba96f884cfe6de7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870613,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62cc13ebf42566aa876f05df84f53eb2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"488304c79a970eb09ba96f884cfe6de7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62cc13ebf42566aa876f05df84f53eb2","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"488304c79a970eb09ba96f884cfe6de7","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/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":"62cc13ebf42566aa876f05df84f53eb2"} device-1 | {"level":"info","message":"OPTIONS /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/websocket 200 1ms","method":"OPTIONS","requestID":"62cc13ebf42566aa876f05df84f53eb2","responseTime":1,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"488304c79a970eb09ba96f884cfe6de7"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.358275,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/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":"488304c79a970eb09ba96f884cfe6de7"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/websocket 200 21ms","method":"POST","requestID":"488304c79a970eb09ba96f884cfe6de7","responseTime":21,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a90a1c53d27f2a0ae0f10381cfce80fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/websocket 200 17ms","method":"POST","requestID":"a90a1c53d27f2a0ae0f10381cfce80fd","responseTime":17,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/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":"a90a1c53d27f2a0ae0f10381cfce80fd"} device-1 | {"level":"info","message":"device 'http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"51fe17931707fb2ef7c8d0e15405adc4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"51fe17931707fb2ef7c8d0e15405adc4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51fe17931707fb2ef7c8d0e15405adc4"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994801,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"51fe17931707fb2ef7c8d0e15405adc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"51fe17931707fb2ef7c8d0e15405adc4","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.416799457Z"}]},"request_id":"70bb0e8b-6449-481c-a932-497823f57035","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.4911704} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51fe17931707fb2ef7c8d0e15405adc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"51fe17931707fb2ef7c8d0e15405adc4"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51fe17931707fb2ef7c8d0e15405adc4"} device-1 | {"level":"info","message":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? 200 14ms","method":"GET","requestID":"51fe17931707fb2ef7c8d0e15405adc4","responseTime":14,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"26b1b99b40b4e579280214b6199b727f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"26b1b99b40b4e579280214b6199b727f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26b1b99b40b4e579280214b6199b727f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182958,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"26b1b99b40b4e579280214b6199b727f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26b1b99b40b4e579280214b6199b727f","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.468551909Z"}]},"request_id":"709ad94e-2955-48c6-a440-b5de16063ce4","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.511415} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26b1b99b40b4e579280214b6199b727f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26b1b99b40b4e579280214b6199b727f"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26b1b99b40b4e579280214b6199b727f"} device-1 | {"level":"info","message":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? 200 13ms","method":"GET","requestID":"26b1b99b40b4e579280214b6199b727f","responseTime":13,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"985d87bfdb2cbfd204f901ecba53b3ee","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.240943,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"985d87bfdb2cbfd204f901ecba53b3ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"985d87bfdb2cbfd204f901ecba53b3ee","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to run experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to book experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully booked experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b0b6950-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66775,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795341,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b0b6950-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3b0b6950-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.416799457Z"}]},"request_id":"e5387b87-77ae-4da1-9bb5-e64d28206331","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.5748305} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.468551909Z"}]},"request_id":"0f7ab6e1-287f-4d13-bb9a-105770aa31c0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.5800538} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? 200 17ms","method":"GET","requestID":"3b0b1b30-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b0b6950-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b0b6950-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? 200 17ms","method":"GET","requestID":"3b0b6950-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Setting up experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully locked booking for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to update booking for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully updated booking for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully set up experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b1442f0-4911-11ef-863d-25b977f1d961"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully running experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900138,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.426274,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"900093aa-68fa-442d-bf5f-f9a1fd7fed6e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6312048} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.961346,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b1442f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","rebac_allow":false,"scope_allow":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":"3b1442f0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.416799457Z"}]},"request_id":"7dba4ceb-ba75-42f1-8f5e-c4d5f7c7372d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6341128} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b1442f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling 200 14ms","method":"POST","requestID":"3b1442f0-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.468551909Z"}]},"request_id":"d9008658-f710-426d-8474-5087fc276765","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6369917} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b170210-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? 200 27ms","method":"GET","requestID":"3b13a6b0-4911-11ef-863d-25b977f1d961","responseTime":27,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? 200 26ms","method":"GET","requestID":"3b13f4d0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12560522-93c7-4f27-9e44-af7ec2e51168#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12560522-93c7-4f27-9e44-af7ec2e51168","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"ef53a802-7e63-4e36-8b66-f0b983a28270","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6486032} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10f8147d-de26-45d1-be10-aebd26c6f8fd","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.648645} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2524ccbc-901a-4f63-9d6f-739b10270538","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6489186} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b1861a0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.907791,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b170210-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","rebac_allow":false,"scope_allow":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":"3b170210-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"985d87bfdb2cbfd204f901ecba53b3ee","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b170210-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling 200 13ms","method":"POST","requestID":"3b170210-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a7c38eb-369e-4043-abe6-e5587f3af678","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6561725} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.692057,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b1861a0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","rebac_allow":false,"scope_allow":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":"3b1861a0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b1861a0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling 200 10ms","method":"POST","requestID":"3b1861a0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"985d87bfdb2cbfd204f901ecba53b3ee","responseTime":140,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b1a5d70-4911-11ef-863d-25b977f1d961"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"2abd184f923dccf918b4a3cdc8d82f00"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2abd184f923dccf918b4a3cdc8d82f00","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2abd184f923dccf918b4a3cdc8d82f00"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f956265-a88d-43ca-b447-3dc113550e04","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6680288} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.218725,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b1a5d70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","rebac_allow":false,"scope_allow":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":"3b1a5d70-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628508,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2abd184f923dccf918b4a3cdc8d82f00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2abd184f923dccf918b4a3cdc8d82f00","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b1a5d70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling 200 9ms","method":"POST","requestID":"3b1a5d70-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.416799457Z"}]},"request_id":"84dca676-36e2-48ed-9249-e7bd1c900f27","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.673243} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Building connection plan","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"6b147264-99bc-4a1e-a759-dd86a0eeb370"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"517f1421-0d53-44fb-b0bd-fd8c4dd44245"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c3e3fb4c-4d22-411d-a37e-4b02d2eb4ddf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2abd184f923dccf918b4a3cdc8d82f00","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2abd184f923dccf918b4a3cdc8d82f00"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2abd184f923dccf918b4a3cdc8d82f00"} device-1 | {"level":"info","message":"GET /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b? 200 12ms","method":"GET","requestID":"2abd184f923dccf918b4a3cdc8d82f00","responseTime":12,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.72342,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b1c3230-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"2b6168bcb76d1f918b3550a3137ee0bc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2b6168bcb76d1f918b3550a3137ee0bc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b6168bcb76d1f918b3550a3137ee0bc"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7049,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"2b6168bcb76d1f918b3550a3137ee0bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2b6168bcb76d1f918b3550a3137ee0bc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"51d392bb-87d6-479b-bcc7-cc1bef08db5b","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6891196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b58c175-b825-4921-8320-4643dfab9042","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.689302} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:00.468551909Z"}]},"request_id":"bf38668c-fbf8-457c-8708-bc6a229b9217","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.6905189} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2b6168bcb76d1f918b3550a3137ee0bc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b6168bcb76d1f918b3550a3137ee0bc"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b6168bcb76d1f918b3550a3137ee0bc"} device-1 | {"level":"info","message":"GET /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d? 200 12ms","method":"GET","requestID":"2b6168bcb76d1f918b3550a3137ee0bc","responseTime":12,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331'","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331'","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3b1c3230-4911-11ef-863d-25b977f1d961"} 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":"3b1c3230-4911-11ef-863d-25b977f1d961","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":"3b1c3230-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"985d87bfdb2cbfd204f901ecba53b3ee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b250bd0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4afb502-c51d-4f8e-bf12-ecdd2c4e0027","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.7379544} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.873736,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b250bd0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","rebac_allow":false,"scope_allow":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":"3b250bd0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b250bd0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling 200 10ms","method":"POST","requestID":"3b250bd0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling"} device-1 | {"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b26e090-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b584e221-0996-417a-9952-527547a94ebf","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.7495203} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.136363,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b26e090-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","rebac_allow":false,"scope_allow":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":"3b26e090-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b26e090-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling 200 8ms","method":"POST","requestID":"3b26e090-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling"} device-1 | {"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3859814774477650147 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:IfCG\r\na=ice-pwd:ZZe9DpW1JKLkLKBoLJ7W908B\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B5:CB:1F:16:6C:8E:89:55:15:E2:D1:F4:98:EE:0F:5E:D2:0D:48:79:E2:DC:E2:C2:1B:10:0C:FE:54:38:4A:23\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 228720250129176333 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:j2Op\r\na=ice-pwd:FLi7CtpbjNl6BaiUJglQU6O9\r\na=ice-options:trickle\r\na=fingerprint:sha-256 49:4A:04:F9:2B:19:6A:DD:59:44:B3:B9:5F:96:E9:DE:2D:57:59:65:59:A0:97:BF:CC:2E:04:2E:E7:61:59:EA\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1832996069 1 udp 2113937151 0ab3cb0a-5772-40fd-af7e-d620f9dbab66.local 49992 typ host generation 0 ufrag j2Op network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4268420598 1 udp 1677729535 141.24.211.56 49992 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag j2Op network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","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/91dda272-3d15-4e1a-8584-a7d01fa22b9b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b'"} device-1 | {"content":{"candidate":"candidate:1778856984 1 udp 2113937151 0e13fcaf-1252-4ac0-83a9-ea091b4171f1.local 38721 typ host generation 0 ufrag IfCG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4180448523 1 udp 1677729535 141.24.211.56 38721 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag IfCG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","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/491b690c-0668-4ed7-a16f-71c5da8eb94d'"} device-1 | {"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","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/5a7fd988-c7a1-4f14-836d-091917ef4331' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7cdb60b387d48396528982076ec365f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7cdb60b387d48396528982076ec365f8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"}}},"level":"info","message":"received a callback","requestID":"7cdb60b387d48396528982076ec365f8"} device-1 | {"device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","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":"7cdb60b387d48396528982076ec365f8","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"7cdb60b387d48396528982076ec365f8"} device-1 | {"device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","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/5a7fd988-c7a1-4f14-836d-091917ef4331' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dcfe6e68ec6ad2071aa7771d3c63559e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"dcfe6e68ec6ad2071aa7771d3c63559e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"}}},"level":"info","message":"received a callback","requestID":"dcfe6e68ec6ad2071aa7771d3c63559e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3b3140d0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7fd988-c7a1-4f14-836d-091917ef4331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa33eab0-61c5-40d9-802c-cc29d2130d25","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.8169365} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.159099,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b3140d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","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":"3b3140d0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3b3140d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331 200 6ms","method":"GET","requestID":"3b3140d0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"dcfe6e68ec6ad2071aa7771d3c63559e","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"dcfe6e68ec6ad2071aa7771d3c63559e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b34ea50-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28e02194-4798-414e-86c8-7a4ce77d1226","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.8417997} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.04872,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b34ea50-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","rebac_allow":false,"scope_allow":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":"3b34ea50-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b34ea50-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling 200 8ms","method":"POST","requestID":"3b34ea50-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b3670f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64458308-ab65-4c35-94c5-492cbb3bc658","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.8508782} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.153705,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b3670f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","rebac_allow":false,"scope_allow":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":"3b3670f0-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b3670f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling 200 7ms","method":"POST","requestID":"3b3670f0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"8060a9746787f66c411c14456d100135"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8060a9746787f66c411c14456d100135","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/12560522-93c7-4f27-9e44-af7ec2e51168","requestID":"8060a9746787f66c411c14456d100135"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.714926,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"8060a9746787f66c411c14456d100135","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8060a9746787f66c411c14456d100135","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/12560522-93c7-4f27-9e44-af7ec2e51168","requestID":"8060a9746787f66c411c14456d100135"} gateway-1 | {"time_local":"23/Jul/2024:16:33:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/12560522-93c7-4f27-9e44-af7ec2e51168 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8060a9746787f66c411c14456d100135"} experiment-1 | {"level":"info","message":"GET /experiments/12560522-93c7-4f27-9e44-af7ec2e51168 200 13ms","method":"GET","requestID":"8060a9746787f66c411c14456d100135","responseTime":13,"status":200,"url":"/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E","level":"info","message":"auth send jwt","requestID":"52fa7ce12293933093ed21bb819cf426"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"52fa7ce12293933093ed21bb819cf426","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/12560522-93c7-4f27-9e44-af7ec2e51168","requestID":"52fa7ce12293933093ed21bb819cf426"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.231431,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"52fa7ce12293933093ed21bb819cf426","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52fa7ce12293933093ed21bb819cf426","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Attempting to finish experiment","requestID":"52fa7ce12293933093ed21bb819cf426"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3b419480-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.043247,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b419480-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752382,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4Mn0.Tkv7T_Qn9ObUCVd07QN-A_WbEtpnXeY-AD6R-sDCA7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3b419480-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","device":"91dda272-3d15-4e1a-8584-a7d01fa22b9b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331","device":"491b690c-0668-4ed7-a16f-71c5da8eb94d","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/5a7fd988-c7a1-4f14-836d-091917ef4331' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7fd988-c7a1-4f14-836d-091917ef4331': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7fd988-c7a1-4f14-836d-091917ef4331","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"56f5babb-c5d6-4209-bf6c-6329717df580","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.9435933} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4976cdbd3ca48031988e03a977ec4f19","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4976cdbd3ca48031988e03a977ec4f19","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90501f6e-c9f5-4d2b-9c79-56ed375ec052","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.9440837} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f4b2c6d363c302dcd30218343e642a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 9ms","method":"POST","requestID":"3b419480-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"}}},"level":"info","message":"received a callback","requestID":"4976cdbd3ca48031988e03a977ec4f19"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f4b2c6d363c302dcd30218343e642a9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"}}},"level":"info","message":"received a callback","requestID":"5f4b2c6d363c302dcd30218343e642a9"} device-1 | {"data":{"peerconnection":"5a7fd988-c7a1-4f14-836d-091917ef4331","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3b419480-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331 204 46ms","method":"DELETE","requestID":"3b419480-4911-11ef-863d-25b977f1d961","responseTime":46,"status":204,"url":"/peerconnections/5a7fd988-c7a1-4f14-836d-091917ef4331"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"},"level":"info","message":"Successfully finished experiment","requestID":"52fa7ce12293933093ed21bb819cf426"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b4abc40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91dda272-3d15-4e1a-8584-a7d01fa22b9b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3faea62f-c164-4d83-a2f6-30f9bc06ab0c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.9860153} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.102481,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b4abc40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b","object_type":"device","rebac_allow":false,"scope_allow":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":"3b4abc40-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b4abc40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling 200 10ms","method":"POST","requestID":"3b4abc40-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3b4c9100-4911-11ef-863d-25b977f1d961"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70414d5e-1944-4a1c-bb1c-9adc68efe3f0","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.99278} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12560522-93c7-4f27-9e44-af7ec2e51168': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12560522-93c7-4f27-9e44-af7ec2e51168","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"f30ae2ff-38be-4240-aa7a-d17295e5cbf1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.9931302} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"52fa7ce12293933093ed21bb819cf426","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F491b690c-0668-4ed7-a16f-71c5da8eb94d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"091edb57-ea5f-4dbe-b8f1-83a412c1caed","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752382.9968698} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43193,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3b4c9100-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d","object_type":"device","rebac_allow":false,"scope_allow":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":"3b4c9100-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3b4c9100-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling 200 9ms","method":"POST","requestID":"3b4c9100-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/12560522-93c7-4f27-9e44-af7ec2e51168","requestID":"52fa7ce12293933093ed21bb819cf426"} gateway-1 | {"time_local":"23/Jul/2024:16:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/12560522-93c7-4f27-9e44-af7ec2e51168 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52fa7ce12293933093ed21bb819cf426"} experiment-1 | {"level":"info","message":"DELETE /experiments/12560522-93c7-4f27-9e44-af7ec2e51168 204 149ms","method":"DELETE","requestID":"52fa7ce12293933093ed21bb819cf426","responseTime":149,"status":204,"url":"/experiments/12560522-93c7-4f27-9e44-af7ec2e51168"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"4976cdbd3ca48031988e03a977ec4f19","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"4976cdbd3ca48031988e03a977ec4f19"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"5f4b2c6d363c302dcd30218343e642a9","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f4b2c6d363c302dcd30218343e642a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4M30.9xqXjDw5jDWcWULe04CayrL7udHm8_0PS9G3CNg9bzc","level":"info","message":"auth send jwt","requestID":"ec813e5607502c1b4e1327e65556dfda"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec813e5607502c1b4e1327e65556dfda","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ec813e5607502c1b4e1327e65556dfda"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:03Z"} gateway-1 | {"time_local":"23/Jul/2024:16:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.602","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"329e232a8cf51d01fc2f956417c29a19"} gateway-1 | {"time_local":"23/Jul/2024:16:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.615","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2eb50919404e8b6dc4aaaf627567c434"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":5.582126,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"ec813e5607502c1b4e1327e65556dfda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752383,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4M30.9xqXjDw5jDWcWULe04CayrL7udHm8_0PS9G3CNg9bzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/91dda272-3d15-4e1a-8584-a7d01fa22b9b' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/491b690c-0668-4ed7-a16f-71c5da8eb94d' 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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5866ba9e-a353-4749-abf4-dadb8bb7f684","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.089346} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3050e51a-9e15-45e6-adfa-e4438089c3b7","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.0936632} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"38d533c6-c639-4f63-b208-5656aa80b13d","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1049373} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93a8e4f5-4221-4d74-bd1d-8126937e1511","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1052883} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.104898452Z"}]},"request_id":"5fa03bc4-e0fd-4a1d-9a1d-232174b2af67","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.109364} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ec813e5607502c1b4e1327e65556dfda"} gateway-1 | {"time_local":"23/Jul/2024:16:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec813e5607502c1b4e1327e65556dfda"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"ec813e5607502c1b4e1327e65556dfda","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4M30.9xqXjDw5jDWcWULe04CayrL7udHm8_0PS9G3CNg9bzc","level":"info","message":"auth send jwt","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.756851,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752383,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4M30.9xqXjDw5jDWcWULe04CayrL7udHm8_0PS9G3CNg9bzc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c688c276-ef5d-4cfb-9c62-4d7ad4f1e218","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1331165} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","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:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"292fc954-c75b-4f13-8295-012580ab5a6f","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1374574} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"6f8ca161-253c-4430-ba70-78423c95e280","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1472845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6f8a4cf-03bf-4d55-b6b5-1486235174bb","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1475663} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"02e7c263-05ef-4ba5-b68d-4498eac9f204","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752383.1519785} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb","responseTime":36,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Jul/2024:16:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afeed68cd34831b5e5d7b4e5db1f73cb"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee20c627cbd1583d6330f07aa1676d0d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ee20c627cbd1583d6330f07aa1676d0d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/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":"ee20c627cbd1583d6330f07aa1676d0d"} device-1 | {"level":"info","message":"OPTIONS /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/websocket 200 1ms","method":"OPTIONS","requestID":"ee20c627cbd1583d6330f07aa1676d0d","responseTime":1,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c","level":"info","message":"auth send jwt","requestID":"a2af0ad300c287c3075ff2190e64a27f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a2af0ad300c287c3075ff2190e64a27f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a2af0ad300c287c3075ff2190e64a27f"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.243313,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"a2af0ad300c287c3075ff2190e64a27f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2af0ad300c287c3075ff2190e64a27f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a2af0ad300c287c3075ff2190e64a27f"} gateway-1 | {"time_local":"23/Jul/2024:16:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/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":"a2af0ad300c287c3075ff2190e64a27f"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/websocket 200 20ms","method":"POST","requestID":"a2af0ad300c287c3075ff2190e64a27f","responseTime":20,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c","level":"info","message":"auth send jwt","requestID":"6fd406c71d92c9a09d97c20815f2ae34"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6fd406c71d92c9a09d97c20815f2ae34","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6fd406c71d92c9a09d97c20815f2ae34"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349116,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6fd406c71d92c9a09d97c20815f2ae34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6fd406c71d92c9a09d97c20815f2ae34","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"36a10c9e-13b6-4b82-860f-dfcbd6b3d16e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.2128043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6fd406c71d92c9a09d97c20815f2ae34","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6fd406c71d92c9a09d97c20815f2ae34"} gateway-1 | {"time_local":"23/Jul/2024:16:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6fd406c71d92c9a09d97c20815f2ae34"} device-1 | {"level":"info","message":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? 200 16ms","method":"GET","requestID":"6fd406c71d92c9a09d97c20815f2ae34","responseTime":16,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c","level":"info","message":"auth send jwt","requestID":"f5ae5a362194a9045259fdef087d9341"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5ae5a362194a9045259fdef087d9341","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5ae5a362194a9045259fdef087d9341"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.21353,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"f5ae5a362194a9045259fdef087d9341","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5ae5a362194a9045259fdef087d9341","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to run experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to book experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully booked experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ca78d20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ca7db40-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186322,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ca78d20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ca78d20-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.404668,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ca7db40-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ca7db40-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F053d7538-feb9-4d1a-bed0-a7ceba613b2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.104898452Z"}]},"request_id":"21d6b516-f6b3-4c41-8c6f-1ac3b2ce44b6","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.2775779} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ca78d20-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"05a76a53-a606-4892-becb-7a8ce002c1b1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.2791605} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ca7db40-4911-11ef-863d-25b977f1d961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ca78d20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c? 200 17ms","method":"GET","requestID":"3ca78d20-4911-11ef-863d-25b977f1d961","responseTime":17,"status":200,"url":"/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ca7db40-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? 200 15ms","method":"GET","requestID":"3ca7db40-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Setting up experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"3cad3270-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.157567,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cad3270-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3cad3270-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"413b45e8-38d6-44c3-b3a8-c3a27eeb2ec8","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.3331137} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"428fdeb9-6c62-468e-82a5-b33d4503a878","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.333242} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3cad3270-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf' to 'http://localhost/callbacks/experiment'","requestID":"3cad3270-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"3cad3270-4911-11ef-863d-25b977f1d961"} authentication-1 | {"level":"info","message":"POST /token 201 27ms","method":"POST","requestID":"3cb37400-4911-11ef-a347-b11d962fcf11","responseTime":27,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 75ms","method":"POST","requestID":"3cad3270-4911-11ef-863d-25b977f1d961","responseTime":75,"status":201,"url":"/devices/053d7538-feb9-4d1a-bed0-a7ceba613b2c?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully set up experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cc10890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3cc1cbe0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.588637,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully running experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cc10890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3cc10890-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:54770","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.420737,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.520805,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13ab99ee-2070-490d-a561-0367ba6a9879","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.4476025} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cc1cbe0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","rebac_allow":false,"scope_allow":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":"3cc1cbe0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:05.333032111Z"}]},"request_id":"a7211da6-1b62-4f0e-89da-84b2bf7c38ad","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.4505887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"9d159975-0233-42ee-b651-d5b983977c11","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.453052} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"3cc10890-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb6ae938-3999-4f4a-ba56-0db349243991#owner@http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb6ae938-3999-4f4a-ba56-0db349243991","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"f937bc7f-9c97-42bd-af31-32a128ab63cc","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.4605596} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"240f9f55-b675-4592-b80d-765e191bbc60","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.4608576} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device eb81930a-31ba-4b0b-b93f-47ed12350bbf","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device eb81930a-31ba-4b0b-b93f-47ed12350bbf\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/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"3cc1cbe0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f5ae5a362194a9045259fdef087d9341","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling 404 26ms","method":"POST","requestID":"3cc1cbe0-4911-11ef-863d-25b977f1d961","responseTime":26,"status":404,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cc10890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf? 200 33ms","method":"GET","requestID":"3cc10890-4911-11ef-863d-25b977f1d961","responseTime":33,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? 200 32ms","method":"GET","requestID":"3cc17dc0-4911-11ef-863d-25b977f1d961","responseTime":32,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7?"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device eb81930a-31ba-4b0b-b93f-47ed12350bbf"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3cc6d4f0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:05Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991","user":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5ae5a362194a9045259fdef087d9341"} gateway-1 | {"time_local":"23/Jul/2024:16:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"0.259","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5ae5a362194a9045259fdef087d9341"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4fa2b27-9316-437d-88de-d7b79671cc84","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752385.4790387} experiment-1 | {"level":"info","message":"POST /experiments? 201 253ms","method":"POST","requestID":"f5ae5a362194a9045259fdef087d9341","responseTime":253,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.697194,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3cc6d4f0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","rebac_allow":false,"scope_allow":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":"3cc6d4f0-4911-11ef-863d-25b977f1d961","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3cc6d4f0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling 200 15ms","method":"POST","requestID":"3cc6d4f0-4911-11ef-863d-25b977f1d961","responseTime":15,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa1ed950db16fd42dbb786dddb2e9f06","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"aa1ed950db16fd42dbb786dddb2e9f06","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Jul/2024:16:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/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":"aa1ed950db16fd42dbb786dddb2e9f06"} device-1 | {"level":"info","message":"OPTIONS /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/websocket 200 1ms","method":"OPTIONS","requestID":"aa1ed950db16fd42dbb786dddb2e9f06","responseTime":1,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6ImpHdXNqV2gxVWVYVG1wcUNoQjRjcnY5STVwN2E0Nm14VVhpeU9XbFRUalhKdS14TFhoUm1ydDljd2M3UnA4Q1MzMUYyZ2RMX1lOdG95TzBKY2E5NGJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.zoqqAx9dNQ8Iz0f3x7hq9GEetAL_VAxNeR37BS64CK8","level":"info","message":"auth send jwt","requestID":"4bce51632540335ce1ae5602c89cb383"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4bce51632540335ce1ae5602c89cb383","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4bce51632540335ce1ae5602c89cb383"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193285,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4bce51632540335ce1ae5602c89cb383","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","payload":{"admin":true,"edgeToken":"jGusjWh1UeXTmpqChB4crv9I5p7a46mxUXiyOWlTTjXJu-xLXhRmrt9cwc7Rp8CS31F2gdL_YNtoyO0Jca94bw","iat":1721752387,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6ImpHdXNqV2gxVWVYVG1wcUNoQjRjcnY5STVwN2E0Nm14VVhpeU9XbFRUalhKdS14TFhoUm1ydDljd2M3UnA4Q1MzMUYyZ2RMX1lOdG95TzBKY2E5NGJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.zoqqAx9dNQ8Iz0f3x7hq9GEetAL_VAxNeR37BS64CK8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bce51632540335ce1ae5602c89cb383","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4bce51632540335ce1ae5602c89cb383"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/websocket 200 21ms","method":"POST","requestID":"4bce51632540335ce1ae5602c89cb383","responseTime":21,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/websocket"} gateway-1 | {"time_local":"23/Jul/2024:16:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/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":"4bce51632540335ce1ae5602c89cb383"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2501a219d5eebed83bf178812f43ba0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a2501a219d5eebed83bf178812f43ba0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":true,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"a2501a219d5eebed83bf178812f43ba0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.h48C9sPvewNapiF2UBHnmt-2-nmeK3aQdLnYoxvJ6Bw","level":"info","message":"auth send jwt","requestID":"4944cdf56c3dcc92f6bdfb9a56757665"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4944cdf56c3dcc92f6bdfb9a56757665","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4944cdf56c3dcc92f6bdfb9a56757665"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302597,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"4944cdf56c3dcc92f6bdfb9a56757665","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752387,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.h48C9sPvewNapiF2UBHnmt-2-nmeK3aQdLnYoxvJ6Bw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4944cdf56c3dcc92f6bdfb9a56757665","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:05.333032111Z"}]},"request_id":"5be975e5-aae1-4924-802b-b898ec85d5e2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752387.5451417} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4944cdf56c3dcc92f6bdfb9a56757665","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4944cdf56c3dcc92f6bdfb9a56757665"} gateway-1 | {"time_local":"23/Jul/2024:16:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4944cdf56c3dcc92f6bdfb9a56757665"} device-1 | {"level":"info","message":"GET /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf? 200 20ms","method":"GET","requestID":"4944cdf56c3dcc92f6bdfb9a56757665","responseTime":20,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"a2501a219d5eebed83bf178812f43ba0","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2501a219d5eebed83bf178812f43ba0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.h48C9sPvewNapiF2UBHnmt-2-nmeK3aQdLnYoxvJ6Bw","level":"info","message":"auth send jwt","requestID":"b660b44c1cdc8418fe3e097008dfa150"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b660b44c1cdc8418fe3e097008dfa150","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b660b44c1cdc8418fe3e097008dfa150"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.446542,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"b660b44c1cdc8418fe3e097008dfa150","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752387,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4N30.h48C9sPvewNapiF2UBHnmt-2-nmeK3aQdLnYoxvJ6Bw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b660b44c1cdc8418fe3e097008dfa150","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"989d7d24-ad77-4365-bc3e-b5c228bb521a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752387.5714955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b660b44c1cdc8418fe3e097008dfa150","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b660b44c1cdc8418fe3e097008dfa150"} gateway-1 | {"time_local":"23/Jul/2024:16:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b660b44c1cdc8418fe3e097008dfa150"} device-1 | {"level":"info","message":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? 200 17ms","method":"GET","requestID":"b660b44c1cdc8418fe3e097008dfa150","responseTime":17,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fc288c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122321,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fc288c0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3fc288c0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54772","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:54772","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.55153,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:05.333032111Z"}]},"request_id":"00d18232-4a6e-4085-8e10-70a1e66d7c6a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.4910796} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3fc288c0-4911-11ef-863d-25b977f1d961","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:40172","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"timestamp":"2024-07-23T16:33:03.147257256Z"}]},"request_id":"e19f019d-8260-4e9e-be03-8486a2c50f80","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.4930525} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fc288c0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf? 200 24ms","method":"GET","requestID":"3fc288c0-4911-11ef-863d-25b977f1d961","responseTime":24,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7? 200 23ms","method":"GET","requestID":"3fc2d6e0-4911-11ef-863d-25b977f1d961","responseTime":23,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fc6ce80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8578682-20ba-40c6-ab08-88e1dc10cb20","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.5112896} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.452462,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fc6ce80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","rebac_allow":false,"scope_allow":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":"3fc6ce80-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fc6ce80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling 200 14ms","method":"POST","requestID":"3fc6ce80-4911-11ef-863d-25b977f1d961","responseTime":14,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fc96690-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ee5de77-9e10-44d7-b753-b020ea406e1c","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.528156} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.202763,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fc96690-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","rebac_allow":false,"scope_allow":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":"3fc96690-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fc96690-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling 200 13ms","method":"POST","requestID":"3fc96690-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Building connection plan","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"332a771a-1a22-45a8-915c-574e87739fc2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"83411ef9-2482-4e79-b102-2ae4826433a9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"aef995a5-0ae0-47b0-9e86-9faeff0eee62"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5ae5a362194a9045259fdef087d9341"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.825593,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752385,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM4NX0.02hPnagFWo2xEzLPbUAeQGw6jP8zpxUOJ8Q6W65j27c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd'. 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]}},"raw_response":{},"request_id":"86371e90-1919-4838-9584-4be85f8f9c27","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.557682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13d91a0f-6005-4cbd-a6e1-28776a4087f1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.5580468} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225'","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225'","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 38ms","method":"POST","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961","responseTime":38,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"3fcbfea0-4911-11ef-863d-25b977f1d961"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5ae5a362194a9045259fdef087d9341"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fd6fb20-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} device-1 | {"content":{"canTrickle":true},"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83222227-93a5-4a6d-868a-f64bae6e969e","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.615532} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.790918,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fd6fb20-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","rebac_allow":false,"scope_allow":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":"3fd6fb20-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fd6fb20-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling 200 10ms","method":"POST","requestID":"3fd6fb20-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fd8a8d0-4911-11ef-863d-25b977f1d961"} device-1 | {"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd8fb801-d9fb-4d1b-bf67-4c235e926841","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.6259198} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.660754,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fd8a8d0-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","rebac_allow":false,"scope_allow":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":"3fd8a8d0-4911-11ef-863d-25b977f1d961","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 7208871595633188288 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:73hk\r\na=ice-pwd:H5FwxJxnNAJem06nKNrdVIJa\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2D:F9:A1:B9:9C:82:63:C3:4D:74:F5:07:75:FD:48:D5:33:E1:52:D5:C6:5B:BB:55:28:5A:F5:E8:75:A2:FE:C2\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fd8a8d0-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling 200 10ms","method":"POST","requestID":"3fd8a8d0-4911-11ef-863d-25b977f1d961","responseTime":10,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8889139549330720091 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:I4Gr\r\na=ice-pwd:9a4dfIwSYXq/QsAH9dOPbpIY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B6:D4:42:CA:0B:65:C7:30:15:05:BC:35:0E:FD:32:D7:A8:D5:A3:D3:09:76:D8:9E:6C:D0:6A:CA:88:DD:F0:F2\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1828875552 1 udp 2113937151 a6fcefed-810a-4850-9a44-06f2717aae82.local 43875 typ host generation 0 ufrag I4Gr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","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/724b3a82-81a0-423e-a5c4-3a28e02b88f7'"} device-1 | {"content":{"candidate":"candidate:1180491675 1 udp 1677729535 141.24.211.56 43875 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag I4Gr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2679817061 1 udp 2113937151 e8c59cbf-a948-4d60-a8f8-248ef15f5974.local 36149 typ host generation 0 ufrag 73hk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:210854518 1 udp 1677729535 141.24.211.56 36149 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 73hk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","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/724b3a82-81a0-423e-a5c4-3a28e02b88f7'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf'"} device-1 | {"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","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/0c1f2411-ab93-49e7-82cf-97fd3bda6225' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0c1f2411-ab93-49e7-82cf-97fd3bda6225","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5945c7acb648521cf1f9cb9a7a599b0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5945c7acb648521cf1f9cb9a7a599b0a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"}}},"level":"info","message":"received a callback","requestID":"5945c7acb648521cf1f9cb9a7a599b0a"} device-1 | {"device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","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":"5945c7acb648521cf1f9cb9a7a599b0a","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"5945c7acb648521cf1f9cb9a7a599b0a"} device-1 | {"device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"0c1f2411-ab93-49e7-82cf-97fd3bda6225","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0c1f2411-ab93-49e7-82cf-97fd3bda6225","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/0c1f2411-ab93-49e7-82cf-97fd3bda6225' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0c1f2411-ab93-49e7-82cf-97fd3bda6225","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"470c5e7a3d975941a2d64a67d0837fe7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"470c5e7a3d975941a2d64a67d0837fe7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"}}},"level":"info","message":"received a callback","requestID":"470c5e7a3d975941a2d64a67d0837fe7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3fe2e200-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0c1f2411-ab93-49e7-82cf-97fd3bda6225","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e7eccf8-7ec0-4314-8603-35758e604138","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.6927493} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.247449,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fe2e200-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","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":"3fe2e200-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3fe2e200-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"GET /peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225 200 8ms","method":"GET","requestID":"3fe2e200-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"470c5e7a3d975941a2d64a67d0837fe7","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"470c5e7a3d975941a2d64a67d0837fe7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fe68b80-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1de04e20-da65-4c0e-8977-09831fab3666","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.7163434} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.185758,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fe68b80-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","rebac_allow":false,"scope_allow":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":"3fe68b80-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fe68b80-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling 200 7ms","method":"POST","requestID":"3fe68b80-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fe7eb10-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b285b354-5f23-4fe9-83cd-d08d13f46f3a","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.7259986} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.517243,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3fe7eb10-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","rebac_allow":false,"scope_allow":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":"3fe7eb10-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fe7eb10-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling 200 8ms","method":"POST","requestID":"3fe7eb10-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw","level":"info","message":"auth send jwt","requestID":"83eea44fc17a37d5b937226ccfb35060"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83eea44fc17a37d5b937226ccfb35060","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cb6ae938-3999-4f4a-ba56-0db349243991","requestID":"83eea44fc17a37d5b937226ccfb35060"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.141187,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"83eea44fc17a37d5b937226ccfb35060","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752390,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83eea44fc17a37d5b937226ccfb35060","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cb6ae938-3999-4f4a-ba56-0db349243991","requestID":"83eea44fc17a37d5b937226ccfb35060"} experiment-1 | {"level":"info","message":"GET /experiments/cb6ae938-3999-4f4a-ba56-0db349243991 200 10ms","method":"GET","requestID":"83eea44fc17a37d5b937226ccfb35060","responseTime":10,"status":200,"url":"/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"} gateway-1 | {"time_local":"23/Jul/2024:16:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cb6ae938-3999-4f4a-ba56-0db349243991 HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83eea44fc17a37d5b937226ccfb35060"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw","level":"info","message":"auth send jwt","requestID":"6ed5939d096d04a3c63a3844d4b9dee1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ed5939d096d04a3c63a3844d4b9dee1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cb6ae938-3999-4f4a-ba56-0db349243991","requestID":"6ed5939d096d04a3c63a3844d4b9dee1"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.701382,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"6ed5939d096d04a3c63a3844d4b9dee1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"experiment:http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991","object_type":"experiment","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752390,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ed5939d096d04a3c63a3844d4b9dee1","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Attempting to finish experiment","requestID":"6ed5939d096d04a3c63a3844d4b9dee1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3ff22440-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.254194,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ff22440-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"peerconnection:http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752390,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ff22440-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","device":"724b3a82-81a0-423e-a5c4-3a28e02b88f7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225","device":"eb81930a-31ba-4b0b-b93f-47ed12350bbf","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/0c1f2411-ab93-49e7-82cf-97fd3bda6225' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0c1f2411-ab93-49e7-82cf-97fd3bda6225","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0c1f2411-ab93-49e7-82cf-97fd3bda6225': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0c1f2411-ab93-49e7-82cf-97fd3bda6225","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"f6c17b15-7b51-4caf-87c2-fea28bc14888","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8032846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3406caa6-45d9-4c74-9556-b489932527b1","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8035054} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3ff22440-4911-11ef-863d-25b977f1d961","responseTime":5,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4234e696bd9328b0e92b7ac7f6b489d8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4234e696bd9328b0e92b7ac7f6b489d8","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"097c4bff1bd0bd1f3fa705cb2a743907","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"}}},"level":"info","message":"received a callback","requestID":"4234e696bd9328b0e92b7ac7f6b489d8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"097c4bff1bd0bd1f3fa705cb2a743907","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"}}},"level":"info","message":"received a callback","requestID":"097c4bff1bd0bd1f3fa705cb2a743907"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3ff22440-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225 204 20ms","method":"DELETE","requestID":"3ff22440-4911-11ef-863d-25b977f1d961","responseTime":20,"status":204,"url":"/peerconnections/0c1f2411-ab93-49e7-82cf-97fd3bda6225"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"3ff55890-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.766273,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ff55890-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","payload":{"admin":true,"edgeToken":"qhS4ndUbI1hpBVt3Sf-W3sZosjbNt0UqMBnRaQ8mdtItTawhvRaMuyRB06A1pcpWzeqZ3OJew_nAkpVLFdBHUQ","iat":1721752390,"sub":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd","subject_alt":"http://localhost/users/1271c7d0-ca50-4a35-9dc9-eaad258844cd"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzEyNzFjN2QwLWNhNTAtNGEzNS05ZGM5LWVhYWQyNTg4NDRjZCIsImVkZ2VUb2tlbiI6InFoUzRuZFViSTFocEJWdDNTZi1XM3Nab3NqYk50MFVxTUJuUmFROG1kdEl0VGF3aHZSYU11eVJCMDZBMXBjcFd6ZXFaM09KZXdfbkFrcFZMRmRCSFVRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTc1MjM5MH0.hdZbpaFAw6hlkUS5G-oCf8pUZqAzlfzTUbOkNommjgw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ff55890-4911-11ef-863d-25b977f1d961","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7'"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"804a11ca-b867-432c-812a-1dc401c42e37","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8254786} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c727c4c-499d-4d1c-8b4d-55d89bcb07e2","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8257103} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"3ff55890-4911-11ef-863d-25b977f1d961","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"3ff55890-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"DELETE /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf 204 32ms","method":"DELETE","requestID":"3ff55890-4911-11ef-863d-25b977f1d961","responseTime":32,"status":204,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"},"level":"info","message":"Successfully finished experiment","requestID":"6ed5939d096d04a3c63a3844d4b9dee1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ffc5d70-4911-11ef-863d-25b977f1d961"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F724b3a82-81a0-423e-a5c4-3a28e02b88f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80892ddf-5bf2-465f-9843-48d6f7ac8f01","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8616157} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.606484,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ffc5d70-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7","object_type":"device","rebac_allow":false,"scope_allow":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":"3ffc5d70-4911-11ef-863d-25b977f1d961","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ffc5d70-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling 200 13ms","method":"POST","requestID":"3ffc5d70-4911-11ef-863d-25b977f1d961","responseTime":13,"status":200,"url":"/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7/signaling"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","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%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb6ae938-3999-4f4a-ba56-0db349243991': 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:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb6ae938-3999-4f4a-ba56-0db349243991","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F1271c7d0-ca50-4a35-9dc9-eaad258844cd"}]},"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","writes":null},"raw_response":{},"request_id":"d8d24df0-3cd8-40a6-b5aa-8dbdddf5a059","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8687773} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store_id":"01J3G6X789CVJE4AAD4WZJ6R03"},"raw_response":{"authorization_model":{"id":"01J3G6X79CTWQNSG2JE6BJGQ6M","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9cfa39e9-f625-44d4-8e04-4f150a962cd3","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.869042} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ffea760-4911-11ef-863d-25b977f1d961"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"6ed5939d096d04a3c63a3844d4b9dee1","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:40172","raw_request":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","contextual_tuples":null,"store_id":"01J3G6X789CVJE4AAD4WZJ6R03","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb81930a-31ba-4b0b-b93f-47ed12350bbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"212e68aa-f8f2-4855-9f48-0fa1c2c70520","store_id":"01J3G6X789CVJE4AAD4WZJ6R03","subsystem":"openfga","timestamp":1721752390.8751764} authorization-1 | {"client_addr":"127.0.0.1:37780","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.891465,"resp_status":200,"subsystem":"opa","time":"2024-07-23T16:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","openfga":{"authorization_model_id":"01J3G6X79CTWQNSG2JE6BJGQ6M","store":"01J3G6X789CVJE4AAD4WZJ6R03"},"requestID":"3ffea760-4911-11ef-863d-25b977f1d961","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf","object_type":"device","rebac_allow":false,"scope_allow":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":"3ffea760-4911-11ef-863d-25b977f1d961","responseTime":6,"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/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"3ffea760-4911-11ef-863d-25b977f1d961"} device-1 | {"level":"info","message":"POST /devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/signaling 404 10ms","method":"POST","requestID":"3ffea760-4911-11ef-863d-25b977f1d961","responseTime":10,"status":404,"url":"/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf/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":"6ed5939d096d04a3c63a3844d4b9dee1"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cb6ae938-3999-4f4a-ba56-0db349243991","requestID":"6ed5939d096d04a3c63a3844d4b9dee1"} gateway-1 | {"time_local":"23/Jul/2024:16:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cb6ae938-3999-4f4a-ba56-0db349243991 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":"6ed5939d096d04a3c63a3844d4b9dee1"} experiment-1 | {"level":"info","message":"DELETE /experiments/cb6ae938-3999-4f4a-ba56-0db349243991 204 163ms","method":"DELETE","requestID":"6ed5939d096d04a3c63a3844d4b9dee1","responseTime":163,"status":204,"url":"/experiments/cb6ae938-3999-4f4a-ba56-0db349243991"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"4234e696bd9328b0e92b7ac7f6b489d8","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"4234e696bd9328b0e92b7ac7f6b489d8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"097c4bff1bd0bd1f3fa705cb2a743907","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"097c4bff1bd0bd1f3fa705cb2a743907"} gateway-1 | {"time_local":"23/Jul/2024:16:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"5.770","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9704d12a4b0bb8fd9df02fd119b6b18a"} gateway-1 | {"time_local":"23/Jul/2024:16:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2406","request_time":"3.446","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"23f4ba667ddfbf7f156b00d5decea49d"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/724b3a82-81a0-423e-a5c4-3a28e02b88f7' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5388b9cfd71a3170b423331a0b267ca3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5388b9cfd71a3170b423331a0b267ca3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":false,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/eb81930a-31ba-4b0b-b93f-47ed12350bbf"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"5388b9cfd71a3170b423331a0b267ca3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"5388b9cfd71a3170b423331a0b267ca3","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Jul/2024:16:33:10 +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.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"5388b9cfd71a3170b423331a0b267ca3"} authentication-1 exited with code 0 device-1 exited with code 0 experiment-1 exited with code 0 federation-1 exited with code 0 authorization-1 exited with code 0 gateway-1 exited with code 0